如何在当前HTML表格行中获取文本框的值?

时间:2013-04-14 14:48:31

标签: jquery html dom textbox html-table

我有以下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读取该文本框值的最佳方法是什么?我想避免任何硬编码的列偏移,因为尽管它是本例中的第一列,但我可能会添加新的列,所以我想让它更具有前瞻性。

2 个答案:

答案 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();