タイトルには、選択ボックスに関する問題があり、iOS Safariで変更イベントを発生させています。 私は次のコードを持っている:iOSで毎回jQueryの選択変更が発生する
$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');
上記のコードは、iOSの上のオプションのみ毎秒時間を変更するのに対し-the出力オプションは、各変更event-に応じて変更するデスクトップブラウザ上で正常に動作しますが(最初の変更に取り組んでいます2番目にはない、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