如何解决jQuery JSON 动态列表加载但选择项目列表加载两次
我有一个从 API 获取数据的动态列表。但是当您调用 API 时,它会列出项目。列表项已加载,但如果要填充该项目,则需要双击该项目。如何防止双重加载或允许用户单击一次然后填充项目。
搜索框
$("#input_2").on("keypress keyup blur",function () {
$('#result-set').html('');
var searchF = $('#input_2').val();
var expression = new RegExp(searchF,"i");
if(searchF.length > 3){
var mSearch = "https://example.com/tests.PHP?c="+searchF;
mSearch = decodeURIComponent(mSearch);
$.get(mSearch).done(function (data){
$.each(JSON.parse(data),function (key,value) {
if(value.name.search(expression) != -1 || value.desc.search(expression) != -1 ){
$('#result-set').append('<li class="nlist" data-no="'+value.no+'" data-name="'+value.name+'" style="cursor:pointer;">'+value.name+' | '+value.desc+'</li>');
}
});
});
}else{
$('ul.list').empty();
}
});
动态列表
$( "#result-set" ).on("click","li.nlist",function(event) {
if($(this).attr("data-bhfno").length > 0){
$("#input_3").val($(this).attr("data-no"));
$("#input_2").val($(this).attr("data-name"));
var meSearch = "https://example.com/test.PHP?ress="+$(this).attr("data-no");
meSearch = decodeURIComponent(meSearch);
$.get(meSearch).done(function (cAddress){
$.each(JSON.parse(cAddress),function (keyress,valueress) {
//Fill this with data
$("#input_4").val(valueress.Phone);
$("#input_5").val(valueress.Location);
});
});
$( "#result-set" ).trigger('click');
}
$('ul.list').empty();
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。