Django CheckboxSelectMultiple - 如何添加滚动条?
我正在为我的模型创建添加/编辑视图。我有一个多对多的关系,想把它显示成复选框,而不是默认的多选下拉框。
我做了一些研究,发现我只需要在我的ModelForm中添加类似下面的内容:
objects = forms.ModelMultipleChoiceField(widget=forms.CheckboxSelectMultiple(), queryset=RelatedObjects.objects.all())
这样就可以了。现在我的数据库里有很多相关对象的条目。
问题很简单:我该如何像默认的多选下拉框那样添加滚动条呢?
如果这很重要,我在模板中使用的是django-bootstrap3来渲染我的表单。
谢谢!
1 个回答
2
把高度属性传给SelectMultiple只会改变每个选择项的高度,这并不是你想要的效果。下面是我怎么做的。
在admin.py文件中添加:
Class Mycls:
Media:
js = ('js/hack.js',)
然后在你的statis/js/hack.js文件中,写一段JavaScript代码来调整那个列表的父级div的大小。要找到这个div的ID或类名,你需要使用浏览器的调试工具。举个例子:
$( document ).ready(function() {
$(".filtered").attr('style', 'height:100px;overflow:scroll;');
});