gpt4 book ai didi

jQuery 自动完成 "no result"不可单击或可选择

转载 作者:行者123 更新时间:2023-12-01 03:56:32 26 4
gpt4 key购买 nike

如何正确处理jQuery Autocomplete中的“无结果”情况函数“无结果”不可点击或不可选择?

在“解析”部分我添加“无结果”项:

 parse: function(data) {
var array = new Array();
if (!data || data.length == 0) {
array [0] = { data: { Title: "No results" }, value: "No results", result: "No results"};
}
}

所以什么时候没有结果,就只显示“No results”。但它是可选择和可点击的,这是不好的,因为该值随后会传递到文本输入。

编辑
完整的 JavaScript 部分:

<script type="text/javascript">
var NoResult= "No result";
$(function() {
$("#txtTextAnimal").autocomplete('<%= Url.Action("Find", "Animal") %>', {
dataType: 'json',
delay: 100,
parse: function(data) {
var rows = new Array();
for (var i = 0; i < data.length; i++) {
rows[i] = { data: data[i], value: data[i].Title, result: data[i].Title };
}
if (rows.length == 0) {
rows[0] = { data: { Title: NoResult}, value: "", result: NoResult};
}
return rows;
},
formatItem: function(item) {
return item.Title;
}
}).result(function(event, item) {
if (item.Title != NoResult) {
$("#hidAnimalId").val(item.Id);
$("#hidAnimalId").closest("form").submit();
}

});
});

</script>

最佳答案

我不确定您正在使用哪个自动完成插件,但某处一定有一个“点击”处理程序?在此功能中,您只需检查“无结果”。

或者,当没有数据时,您可以将数组值设置为空吗?所以...

var array = new Array();
if (!data || data.length == 0) {
array [0] = { data: { Title: "No results" }, value: "", result: "No results"};
}

此处更新:您可以使用结果选项...这未经测试,因此可能需要进行一些修改

jQuery('#yourTextbox').result(function(event, data, formatted) {
if (!data || formatted == 'No Result'){
return false;
} else {
// return true or some other logic?
}
});

关于jQuery 自动完成 "no result"不可单击或可选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2108613/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com