【问题标题】:Remove search option from django widget FilteredSelectMultiple从 django 小部件 FilteredSelectMultiple 中删除搜索选项
【发布时间】:2020-11-10 14:46:37
【问题描述】:

我在表单中使用 FilteredSelectMultiple 小部件,但我想从小部件中删除搜索选项。

forms.py

study=forms.MultipleChoiceField(required=True,widget=FilteredSelectMultiple(_('Study'),False))

渲染后,它的代码以 id="id_study_filter" 和 class="selector-filter" 的 html 段落出现。我尝试使用它的 id 删除它,但以下代码不起作用。

document.getElementById("id_study_filter").style.display = 'none';

我也尝试在超时后隐藏它,但它仍然不起作用。

$(document).ready(function() {
$('#id_study_filter').delay(3000).hide();});

【问题讨论】:

    标签: django django-forms django-templates


    【解决方案1】:

    第二个解决方案对我有用,即使没有延迟。

    小部件是管理员形式的吗?您是否尝试过从控制台运行脚本?

    【讨论】:

    • 是的,小部件是管理员形式的。
    • class Media 中传递一个 .js 文件使它对我有用。
    • 我在 html 文件中添加脚本,它应该也可以工作吧?
    • 只要在执行脚本之前加载 jQuery,它就应该加载。您是否通过运行其他东西来确保您的 jQuery 正常工作?
    • 可能文档在加载元素之前就准备好了,因此脚本无法通过该 ID 选择元素,因为它还不存在。您可以等待元素存在或使用 DOMContentLoaded。
    猜你喜欢
    • 2013-01-20
    • 2021-09-15
    • 2021-10-13
    • 1970-01-01
    • 2016-03-13
    • 2016-06-08
    • 2012-02-28
    • 1970-01-01
    • 2018-11-08
    相关资源
    最近更新 更多