在新动态添加的tablerow上选择第二个输入

时间:2014-10-22 17:49:53

标签: jquery

我在表中的第二个输入上绑定了一个keyup委托事件时出现问题 HTML。我想要的是将keyup事件绑定到所有新表行中的所有第二个输入。有可能吗?

<button id="myButton">Add New Row</button>
<table id="myTable">
<tr>
    <td>This is a static row.</td>
    <td><input type="text">
    <td><input type="text">
</tr>
</table>

$("#myButton").click(function () {
var newRow = '<tr><td>dynamic row</td><td><input type="text"><td><input type="text"></tr>';
$('#myTable tr:last').after(newRow);
});

$('#myTable').on('keyup', 'td input:eq(0)', function (event) {
alert('keyup!!!!');

1 个答案:

答案 0 :(得分:1)

你想要定位第二个输入,这意味着你需要定位那个td,其中第二个输入在这种情况下它是tr的第三个td:

$('#myTable').on('keyup', 'tr td:eq(2) input', function (event) {
alert('keyup!!!!');

如果你想跳过没有动态添加的第一行,那么:

$('#myTable').on('keyup', 'tr:gt(0) td:eq(2) input', function (event) {
    alert('keyup!!!!');