假设我有这段代码:
...
<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();
答案 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');