所以我有以下問題。我正在嘗試將兩個事件添加到複選框的表格中。JQuery .on只能在動態生成的元素上觸發一次
這裏是一個html的例子。
<body>
<div id='container'> //static element, everything beyond this element is dynamic
<div id='pane_x'>
<div id='bottom_x'>
<div id='bottom_left_x'>
<div id='results_x'>
<div id='list_x'>
<div id='table_1'>
<table>
<tbody>
<tr>
<td>
<input type='checkbox' name='blah' id='blah_obj.id_x' class='blahblah'>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
我試圖通過使用前綴選擇[ID^=「blah_」],選擇複選框唯一希望。我能夠得到代碼爲第一個窗格工作,即:pane_0,但它不在window_1或更高版本上觸發。
jquery(document).on("change", "[id^='blah_" + obj.id + "']", function() {
//code here
});
有可能是嵌套錯誤,因爲我只是做了一個近似的估計的HTML。奇怪的是我可以通過使用雛菊鏈.children()語句看到它們,但我無法選擇輸入元素。
由於意見不支持相同的代碼塊,因爲這部分我就在這裏新增:
jquery(document).on("change", ".checked", function() {
var ids = jquery(this).attr("id").split("_");
if (ids[0] === "blah")
//do code
}
});
編輯爲清楚起見,ID。 id結構是「blah_」obj.id「_」個人迭代器。所以在窗格0 3個複選框應該是這樣的: blah_0_0 blah_0_1 blah_0_2
有這個頁面,我不想跟這些功能的目標2個多套複選框列表,這就是爲什麼我使用前綴選擇器。
會有很多投入使用相同的ID?像2個不同窗格中的相同ID的輸入一樣? –
我想你應該使用'.live()'與dinamically生成的元素。 – Dim13i
哪裏定義了「obj.id」?爲什麼不使用複選框類作爲選擇器? – charlietfl