1

チェックボックスをラップするために次のコードを使用しています。

$('input[type="checkbox"]').wrap('<div class="checkableBox"/>');

これは最初のページではうまく機能していますが、AJAX を使用してデータベースからいくつかの新しいチェックボックスがロードされるたびに、それらのラップが停止します。

では、ここで jQuery on() を使用して、aobe の問題を防ぐにはどうすればよいでしょうか。またはこれを修正する他の方法はありますか?

よろしく

4

3 に答える 3

2

ajaxの成功でもう一度呼び出す

$.ajax({
    success:function(){
        $('input[type="checkbox"]').each(function(){
            if(!$(this).parent().is('.checkableBox'))
            {
                $(this).wrap('<div class="checkableBox" />');
            }
        });
    }
});
于 2013-08-05T10:24:11.790 に答える
0

ページへのajax更新後にこのコマンドを実行するためにjquery関数を呼び出していますか? そうでない場合は、それを行う必要があります。
Jose が提案したように、ラップを関数に入れます。
一度、ajax クエリは追加のチェックボックスを Web サイトにロードし、チェックを実行します (例: .change() イベントを親 divに呼び出し、まだラップされていない場合はその中に新しいデータをラップする関数を呼び出します)
.parent()関数を使用して、親 div が「checkablebox」であるかどうかを確認できます。そうでない場合は、新しく読み込まれたチェック ボックスを div checkablebox でラップします。

于 2013-08-05T10:14:58.897 に答える