使用jquery获取表中输入框的值

时间:2015-04-04 10:25:36

标签: php jquery html

我有一个包含多行输入框的表。整个表及其内容是使用jQuery Post动态创建的。表中的每个tr都有7个td,第一个td包含一个单选按钮,剩下的都有带值的文本输入框。用户必须更改文本框中的值,然后单击单选按钮以更新相同的值。如果所选行中的输入框如何获取值?

我使用以下功能弹出警告信息

jQuery(document).delegate("[name='edit']", "click",function (e) {
alert("clicked");}

这很有效。我想用这个来获取输入框的值。最接近的输入。但不知道语法。请帮忙

创建表的脚本如下:

echo'<form id="shiftentry" name="shiftentry" >';


 echo "Date:<input id=shiftdate value='".$date."'/>"; 
 echo "Unit:<input id=shiftdate value='".$unit."'/>";
 echo "Shift:<input id=shiftdate value='".$shift."'/><br/>";

   echo "<table><tr><th>No</th><th>Ele</th><th>Location</th><th>Drate </th><th>H3 Val </th><th>Part </th>   <th>Iod</th><th>Cont. </th></tr>";
            while($row2=mysql_fetch_array($result_sec))
                { 
                echo "<tr>";
     echo "<td><input name='edit' type='radio'/></td>";
                echo "<td>".++$rc."</td>";
                echo "<td><input size='5' id='".$row2['ele']."' value='".$row2['ele']."' /></td>";
                echo "<td><input id='".$row2['loc_id']."' value='".$row2['loc']."' /></td>";
                echo "<td><input size='5' id='drate".$rc."'  value='".$row2['drate']."'/></td>";
                echo "<td><input size='5' id='h3".$rc."' value='0' /></td>";
                echo "<td><input size='5' id='part".$rc."' value='0' /></td>";
                echo "<td><input size='5' id='iod".$rc."' value='0' /></td>";
                echo "<td><input size='5' id='cont".$rc."' value='0' /></td>";
                echo "</tr>";
            }



  echo " </table>";



   echo '<div align="center">';
   echo '<input type="submit" id="submit2" name="submit2" value="Submit" width="30" />';
   echo '</div>';

 echo '</form>';

1 个答案:

答案 0 :(得分:0)

查看.closest():eq()选择器。

jQuery(document).delegate("input[name='edit']", "click",function (e) {

    // Will return the Parent Row of clicked input
    var _tr = $(this).closest('tr');

    // You have 9 td in particular row 
    // Let's access the 7th input box: <input size='5' id='iod".$rc."' value='0' />
    $('td:eq(7) input', _tr).val(); // will return its value
});