我设置了一个 jquery 自动完成来查询端点以获取输入中的选择(一旦开始输入):
$("#brand-select").autocomplete({
source: function(request, response) {
$.getJSON(
'/networks?search='+request.term ,
function(data) {
data = JSON.parse(data);
response(data);
}
);
},
minLength: 1,
multiselect: true
});
有没有办法可以填写自动完成功能,以便立即在输入中包含文本(在页面加载时)?
比如设置了自动补全后,我想让输入自动显示‘ABC’
我知道这是不对的,但我已经尝试过了:
$("#brand-select").autocomplete(["ABC"]);
大概
brand-select
是一个输入框?因此,您可以直接注入值(如果您使用脚本来构建 HTML),这样您最终会得到类似 <input type="text" id="brand-select" value="ABC"/>
的结果。
或者您可以使用标准 jQuery 来填充它,例如
$("#brand-select").val("ABC");
。
自动完成与下拉和搜索相关,但下面的输入框没有改变,所以你可以像其他输入一样对待它。
附注如果您希望它根据该文本自动执行搜索,请调用自动完成的“search()”方法(请参阅https://api.jqueryui.com/autocomplete/#method-search),例如
$("#brand-select").autocomplete("search");
要实现这一点,您只需要一段简单的代码即可为元素分配一个
conclusive value
,然后关注它。
$('#brand-select').autocomplete({
lookup:function(request, response) {
$.getJSON(
'/networks?search='+request.term ,
function(data) {
data = data; // Data is already in JSON format
response(data);
}
);
},
minLength: 1,
multiselect: true
onSelect: function (suggestion) {
var name = suggestion.value;
}
});
现在设置值并将焦点放在元素上
$("#brand-select").val('ABC').focus();
// Ensure that ABC is available in the lookup / source
结论性值意味着当自动完成查找或搜索源时,它只会得到一个值。