以下代码用于订购项目,它允许用户自由键入,但它包含从我的数据库填充的数据列表,因此如果他们开始键入其中一个项目,它将弹出。我想强制文本输入只接受数据库中的项目。我怎么能做到这一点?
<input id="prevName" type="text" list="menuItems">
<datalist id="menuItems">
{% for item in menuItems %}
<option>{{item.name}}</option>
{% endfor %}
</datalist>
</input>
自动填充或其他什么更适合?
答案 0 :(得分:1)
您应该使用Chosen代替它,因为即使是bootstrap的typehead插件也不符合您的需求。
答案 1 :(得分:0)
Autocomplete
总是更适合这种情况,因为您始终可以对用户提出的无效条目进行验证,并且您也可以强制文本输入接受数据库将为用户提供的内容。