我有一個自定義jQM選擇菜單。當頁面加載時,有一個「佔位符」選項。什麼會導致動態加載(長列表)JQM自定義選擇菜單按鈕來重新加載頁面?
<select id="rfa-select-issues" data-native-menu="false" data-mini="true">
<option data-mini="true">Select one or more</option>
</select>
單擊選擇按鈕,導致預期的行爲,其中彈出列表顯示。我有一些腳本可以在用戶在文本字段中輸入數據時動態加載信息。
$("#bws-bipad").on("change", function() {
var value = $("#bws-bipad").val();
if (value) {
value = value.trim();
$.ajax({
url: "<c:url value="/issues/bipad/" />" + value,
})
.then(function (response) {
if (response.status == 200) {
$("#rfa-select-issues").empty();
var html = "<option data-mini='true'>Select one or more</option>";
$(html).appendTo("#rfa-select-issues");
$.each(response.message, function (i, issue) {
var year = ("0000" + issue.year).slice(-4);
var addon = ("00" + issue.addon).slice(-2);
html = "<option id=" + issue.id + " data-mini='true'>" + year + " - " + addon + "</option>";
$(html).appendTo("#rfa-select-issues");
});
$("#rfa-select-issues").selectmenu('refresh', true);
} else {
$("#rfa-select-issues").empty();
var html = "";
$.each(response.errors, function (code, message) {
html = "<option id=" + code + " data-mini='true'>" + code + " - " + message + "</option>";
$(html).appendTo("#rfa-select-issues");
});
$("#rfa-select-issues").selectmenu('refresh', true);
}
$.mobile.loading('hide');
});
}
});
當它擊中一個response.status!= 200,則裝入一個selectmenu錯誤信息,並點擊按鈕按預期工作。當它得到一個很好的響應(response.status == 200)時,會有一長串物品放入。我已經驗證了它們會被加載到dom中。問題是,現在當我點擊按鈕時,它會在頁面中間彈出一秒鐘,然後重新加載整個頁面。我能做些什麼以免重新加載頁面?