我有以下HTML表格:
<table>
<tr>
<th>Name</th>
<th>Button</th>
</tr>
<tr>
<td><input type='text' name='Name' id='Name' class='NameClass' /></td>
<td><a id="myLink" >Click Here</a></td>
</tr>
</table>
我正在简化该表,因为有很多列和行,但基本上当我点击链接时,我想将Name文本框中的任何值读入一个局部变量(为简化起见,我们只需提醒值)。
使用jQuery读取该文本框值的最佳方法是什么?我想避免任何硬编码的列偏移,因为尽管它是本例中的第一列,但我可能会添加新的列,所以我想让它更具有前瞻性。
答案 0 :(得分:5)
ID应该是唯一的,您可以使用类,在将ID更改为可以编码的类之后:
$('.myLink').click(function(e){
e.preventDefault();
var val = $(this).closest('tr').find('.NameClass').val();
// var val = $(this).parent().prev().find('.NameClass').val();
});
答案 1 :(得分:-1)
另一个选择
var result= $(this).parent().parent().find('input[type="text"]').val();
如果添加了另一个输入框,则使用输入的类名称为其所需的值
var result= $(this).parent().parent().find('.className').val();