新しいjquery on()メソッドにコードを更新しようとしています。私はテーブルと選択ボックスを持っています。選択したボックスにテーブルヘッダーセルごとに1つのオプションを設定します。これは正常に動作します。iOSで新しいjquery( 'change')が起動しないのはなぜですか?それはAndroid上で動作しますか?
次に、選択したオプションに応じてヘッダーセルを切り替える必要があります。これはデスクトップとAndroidでは動作しますが、iPadでは動作しません。
これは私がやっているものです:
$(document).on('change',$('select#toggle'), function(...)
が、これだけで:私が最初にそうように文書化するために、次のコードをバインドしようとしました
$('table th').each(function(i) {
// add option to select box for each table column
var toggle = $('<option value="'+id+'">'+th.text()+'</option>');
$('select#toggle').append(toggle); }
// set up options
$('select#toggle').one("updateCheck", function(){
console.log("th-setup");
// if condition, then select, otherwise don't select
}).trigger("updateCheck");
});
// listen for select changes
$('select#toggle').on('change', function() {
console.log("change detected");
})
HTML
<select id="toggle"></select>
<table class="sample">
<thead>
<tr>
<th>one</th>
<th>two</th>
<th>three</th>
<th>four</th>
</tr>
</thead>
</table>
をページが表示される前にiPadをクラッシュさせます。
私は何か間違っているのか、オプションを選択してもiPadとAndroidの両方で起動イベントが起きないのですか?
ヒントありがとうございます!
これをブラウザでデバッグしましたか? –
はい。それはFirefoxとChromeで動作し、Androidの携帯電話でも動作します。だからコードは正しいと思います – frequent
あなたのコードは "on"ではなく、 "one"と言います。 – Sliq