0
正如標題所描述的,我在選擇框和在iOS Safari上觸發更改事件時遇到問題。 我有下面的代碼:jQuery選擇更改在iOS上每隔一次觸發
$thisPage.find('select#id-attribute').on('change', function (e) {
var theId = $(this).val();
$thisPage.find('.place-where-options-get-populated').empty();
if (theId != '') {
$.ajax({'type': 'GET', 'url': '/the-actual-url'+ theId, 'dataType': 'json'})
.done(showTemplate)
.fail(function(jqXHR, textStatus, errorThrown) {
})
} else {
showTemplate({});
}
}).trigger('change');
上面的代碼工作在桌面瀏覽器的罰款-the輸出選項,每個變化事件 - 發生相應的變化,而iOS上的選項只改變每一秒的時間(適用於第一個變化,不在第二個,在第3個工作,不在第4個,等等)。 我正在使用jQuery v3.2.1
正確的方向指南將受到高度讚賞。
編輯: showTemplate()函數基本上是我正在做的服務器的請求,並在下面的(這與我的問題做部分)結束:
$thisPage.find('.place-where-options-get-populated').html(theItems);
現在,如果在'theItems'上做一個console.log,它總是返回它應該返回的內容。此外,內容實際上被添加到適當的容器中,只是它不會顯示在頁面上。
ajax請求上的showTemplate做什麼 –
對你有用的鏈接https://stackoverflow.com/questions/5960731/strange-behavior-of-select-dropdowns-onchange-js-event-when-using-next- on-m – PraveenKumar
@lgkarolos - 請參閱我的文章的編輯部分。 – Seb