我正在使用JQuery自動完成。它工作正常。但是,如果某人在沒有結果的情況下輸入了客戶名稱,我想顯示引導程序錯誤消息。那也適用BUT 只有第一次。如果您在搜索字段中輸入了第二項也是錯誤的,則if ((data.length == 0) || $.isEmptyObject(data) || (data == null))
會呈現TRUE
,但不管我是否收到錯誤消息。我甚至嘗試在警報後清空數據對象。我還在整個if語句中放置了console.log()
消息,以確保我在流程流程方面沒有出錯。我可以看到if()
聲明正在被觸發。但不知何故,警報只適用於第一遍。那麼我做錯了什麼? TKS!如何消除一個對象來滿足我的if語句
$('#customer').autocomplete({
minLength:3,
source: function(request, response,term) {
var param = request.term;
$.ajax({
url: "quotes/customer_search/"+param,
dataType: "json",
type:"GET",
success: function (data) { console.log('l 132',data);
if ((data.length == 0) || $.isEmptyObject(data) || (data == null)) console.log('l 133', data)
{ $("#search_customer").addClass("alert alert-warning fade in").append('No Such Person Found',"<a href='#' class=close data-dismiss='alert' aria-label='close' title='close'>×</a>"); /* .hide(5000); */
delete data ; console.log('l 135', data);
}
response($.map(data, function(item, index) { console.log('l 139', data);
return item.id+" "+item.firstname1+" "+item.lastname1+" "+item.telephone1;
}
));//END Success
},
});//END AJAX
},
問題可能是數據丟失。我想當你關閉一個警報時,它會被銷燬。也許只是定期提醒。並且如果你想讓它被允許的話,可以添加一個按鈕,它的點擊事件是將警報的顯示更改爲顯示:無;然後當你想再次顯示它顯示它。也許使用jQuery的.hide和.show –
爲什麼不使用像bootbox(http://bootboxjs.com/)的庫。現在沒有太多理由從頭開始建立警報。 –
相信他是在說bootstrap twitter alert box,而不是javascript alert –