Django 表单中的可编辑选择字段/下拉框

Posted

技术标签:

【中文标题】Django 表单中的可编辑选择字段/下拉框【英文标题】:Editable choice field/drop down box in Django forms 【发布时间】:2013-12-11 15:57:17 【问题描述】:

我对 Django 很陌生。我想创建一个可编辑的下拉框。搜索后,我找到了以下代码来创建下拉列表。

Choices1 = [("0", _("0")), ("1", _("1")),("2", _("2"))[("3", _("3"))]

_list =  forms.ChoiceField( choices=choices1,label=_("ListExample"),required=False)

它显示下拉框。但这不是可编辑的字段。它不允许我编辑值,它只允许我选择。我想将此下拉/选择归档为可编辑框。

谢谢, 卡莱

【问题讨论】:

抱歉,“可编辑框”是什么意思?你能选择或写输入吗? 我需要让用户从下拉列表中选择一个项目,但也允许他们输入任何文本,即使它与列表中的项目不匹配。我想要类似于下面的下拉框。 dhtmlgoodies.com/scripts/form_widget_editable_select/… 你是怎么解决这个问题的?!我也有同样的问题。 【参考方案1】:

也许你可以这样做:

Choices1 = [("0", _("0")), ("1", _("1")),("2", _("2"))[("3", _("3"))]

options = (value for key, value in Choices1 )

list =  forms.CharField(widget=forms.Textarea(attrs'selectBoxOptions':';'.join(options))),label=_("ListExample"),required=False)

在您的 html 中,您可以尝试:

<form>
    form.as_p
</form>


<script type="text/javascript">
    createEditableSelect(document.forms[0].myText);
</script>

【讨论】:

【参考方案2】:

供将来参考:该解决方案现在可用于 html5,它允许可编辑的下拉列表。 Django 也是如此:https://***.com/a/32791625/1937033

【讨论】:

以上是关于Django 表单中的可编辑选择字段/下拉框的主要内容,如果未能解决你的问题,请参考以下文章

axure-rP中下拉框不可编辑怎么设置

如何根据 Django 下拉菜单中的选择显示和隐藏表单字段

使用组合框中的值编辑从列表框中选择的记录中的字段

如何使用下拉列表的不同选项自动填充编辑字段?

具有可编辑字段的 FLTK 选择小部件

django表单存储模型的下拉列表