私はjQueryとjQueryのUIを使用しています。以下は私のマークアップです:
<div id="content">
<ul id="sortable">
<li class="button_tab"><div id="select_me">Select Me</div></li>
<li class="button_tab"><div id="select_me_1">Select Me 1</div></li>
<li class="button_tab"><div id="select_me_2">Select Me 2</div></li>
</ul>
</div>
jquery:
$( ".button_tab" ).button();
clickイベントでid = "select_me"を取得しようとしていますが、button()関数が特定のクラス名を挿入して正しく選択できないため、何も起こりません。
$("div#content ul#sortable li.button_tab div").click(function() {
alert($(this).attr("id"));
});
回答:
回答№1の場合は3与えられたコードはうまく動きます。しかし、それらを呼び出す順序は重要です。
.button()
すべてをクリアします click
論理的には「クリック」を処理することになっているので、イベントはカスタムを有効にするために click
子供たちのためのイベント。あなたが作成する必要があります click
呼び出し後のイベントリスナー .button()
$( ".button_tab" ).button();
$("div#content ul#sortable li.button_tab div").click(function() { alert($(this).attr("id"));
});
それ以外の場合は、あなたが利用することができます .on()
そして動的を作成する click
Jqueryのイベントリスナー。
回答№2の場合は1
試す
$("#sortable li.button_tab div[id^="button_tab"]").click(function() {
alert($(this).attr("id"));
});
または
$("#sortable li.button_tab").click(function() {
var div_id = $(this).find("div[id^="button_tab"]").attr("id");
alert(div_id);
});