我有以下 HTML 元素;
<div id="divOrderContainer">
<ul id="ulOrders">
<li id="liAck">
<div id="divViewOrderTitle"></div>
<div id="divViewOrderSpacer"></div>
<div id="divAcknowledgeItems"></div>
</li>
<li id="liTemp">
<div id="divViewOrderTitle">test</div>
<div id="divViewOrderSpacer"></div>
<div id="divTempItems"></div>
</li>
</ul>
</div>
在页面准备就绪时,我执行 ajax 请求,然后在响应时将其插入到现有的 DOM 树中,例如;
htmlBuilder_Temp = htmlBuilder_Temp + '<li><table id="tableTemp">' +
'<tr>' +
'<th>Ia</th>' +
'<th>Den</th>' +
'<th>Unt</th>' +
'<th>Ory</th>' +
'<th></th>' +
'</tr>';
htmlBuilder_Temp = htmlBuilder_Temp +
'<tr>' +
'<td> a </td>' +
'<td ""> +b+ </td>' +
'<td> +c+ </td>' +
'<td> +d+ </td>' +
'<td><span id="span'+posid+'">delete<span></td>' +
'</tr>';
htmlBuilder_Ack = htmlBuilder_Ack + '</table></li>';
新元素的附加“总是”成功,
所以这是我的问题,我想将点击处理程序附加到下的每个跨度
Table>tr>td>span,
当点击时会提醒我元素 id 但是,当我尝试检查是否附加了点击处理程序时,没有,
单击处理程序代码:
$("#divTempItem > table > tbody > tr").('click', 'td span', function(){
alert($(this).attr("id");
});
我也试过;
$("#tableTemp").on('click', 'tr td span', function(){
alert($(this).attr("id");
});
但无济于事,似乎我无法访问我正在寻找的特定 DOM 元素......访问名称“span”+number 并不能解决我的问题,
我是不是错过了什么,
这是输出 DOM 树的视图;我已经删除了最后的结束标签,我认为这就足够了......
<div id="divOrderContainer">
<ul id="ulOrders">
<li id="liAck"></li>
<li id="liTemp">
<div id="divViewOrderTitle">test</div>
<div id="divViewOrderSpacer"></div>
<div id="divTempItems">
<li>
<table id="tableTemp">
<tbody>
<tr>
<td> a </td>
<td> b </td>
<td> c </td>
<td> d </td>
<td><span id="span8">delete</span></td>
</tr>
</tbody>
</table>
到底是谁自动创建了“TBODY”元素?
谢谢..