如何通过单击相同不同的另一个<input />来获取<input />的值

时间:2012-03-21 08:27:30

标签: jquery

<tr class="item-row" id="itemsRow">
      <td></td>
      <td><input class="tInput" id="invoiceNo" readonly/> </td>
      <td><input class="tInput" id="clientId" readonly /> </td>
      <td><input class="tInput" id="issueDate"  readonly/></td>
      <td><inpu  class="tInput" id="netTotal" readonly /> </td>
      <td><input class="tInput" id="amountDue" readonly /> </td>
      <td><input class="tInput" id="status" readonly /> </td>
 </tr>

当我使用以下代码点击“输入id = status”时,我试图获取'input id = invoiceNo'的值

var invno = $(this).closest('tr td:nth-child(2) input').val();
alert(invno);

警告'未定义'

那怎么解决这个问题?

4 个答案:

答案 0 :(得分:1)

closest仅搜索parent()数组。 所以你必须在你的父元素中搜索:

var invno = $(this).closest('tr').find('td:nth-child(2) input').val();

答案 1 :(得分:0)

我愿意

var invo = $(this).parents('tr').find('#invoiceNo').val()

答案 2 :(得分:0)

尝试使用此

   $(this).closest('tr td:nth-child(1)').find('input#invoiceNo').val();

答案 3 :(得分:0)

你有一个应该对该页面唯一的ID(如果不是,你需要修复它),所以只需使用标准ID选择器直接选择元素({{1 }})。没有必要进行DOM遍历。