从按钮获取输入值
Get the value of an input from a button
假设我有这个代码:
...
<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();
你的两个元素在树的不同部分,所以找到 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');
假设我有这个代码:
...
<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();
你的两个元素在树的不同部分,所以找到 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');