从按钮获取输入的值

时间:2015-07-29 16:17:48

标签: jquery find next

假设我有这段代码:

...
<tr>
  <td align="right">
    <button type="button" class="btn btn-default editCustomer"><i class="fa fa-edit"></i></button>
  </td>
  <input type="hidden" name="usr_firstname" value="Franck">
</tr>
...

如何获取usr_firstname输入的值?

我已经尝试过这样的事情:
- usr_firstname = $(this).closest('input[name="usr_firstname"]').val();
- usr_firstname = $(this).find('input[name="usr_firstname"]').val();

1 个答案:

答案 0 :(得分:1)

您的两个元素位于树的不同部分,因此找到closest共同祖先然后find向下。

usr_firstname = $(this).closest('tr').find('input[name="usr_firstname"]').val();

注意:隐藏的input直接位于TR下的HTML无效。大多数浏览器都会容忍它,但它应该去其他地方(例如在TD内)。

建议:

我建议您在行上注入隐藏值data-属性。

<tr data-firstname="Franck">
  <td align="right">
    <button type="button" class="btn btn-default editCustomer"><i class="fa fa-edit"></i></button>
  </td>
</tr>

然后代码就变成了这样:

usr_firstname = $(this).closest('tr').data('firstname');