0

「select2」を使用したボックスを美しくするために、多くの選択ボックスを含むHTMLページがあります。私が行ったことは次のとおりです。

$(document).ready(function() { $("select").select2(); });

これにより、すべての選択ボックスが「select2」のように変換されます。しかし、今はボタンのクリック (ドキュメントの準備ができた後) でテーブルを生成しているため、新しく生成された選択ボックスは "select2" のようには見えません。ドキュメントの変更を検出する関数があれば教えてください。
何かのようなもの:

$(document).change(function() { $("select").select2(); });
4

4 に答える 4

1

次のようなことを試すことができます:

function checkDocumentChange() {
  // Run a simple task to check whether any new "selects" were added
  var old_value = checkDocumentChange.num_selects || 0;
  var new_value = $("select").length;

  if (old_value != new_value) {
    $("select:not(.already_done)").select2();
  }

  checkDocumentChange.num_selects = new_value;
  setTimeout(checkDocumentChange, 100);
}

DOM イベントは非推奨であるため、使用することはお勧めしません

もちろん、より良いアプローチは、DOM.select2()に挿入した直後に呼び出すことです。selectこれをチェッカーやイベントに委任する必要がないようにします。

于 2013-07-05T08:01:40.447 に答える
0

この ID またはクラスを使用します

このコードで

var id = document.getelementbyid("id for select 1 or 2");

//here  the code
于 2013-07-05T08:02:39.873 に答える