如何使用javascript或jquery获取表格的特定行中的复选框和文本框值

时间:2014-06-16 09:21:38

标签: javascript jquery html

我试图在表格的特定行中显示复选框和文本框值。下面的代码在IE7中工作正常,而在IE8,9中没有。

HTML

<table id="tblSrc">
   <tr>
        <td><input type="checkbox" name="firstrowchkbox"></td>
        <td><input type="text" name="firstrowtxtbox"></td>
   </tr>
   <tr>
        <td><input type="checkbox" name="secondrowchkbox"></td>
        <td><input type="text" name="secondrowtxtbox"></td>
   </tr>
</table>

SCRIPT

var tbl = document.getElementById("tblSrc");
var firstrowchkval = tbl.rows[0].cells[0].firstChild.value
var firstrowtxtval = tbl.rows[0].cells[1].firstChild.value

如何通过支持所有浏览器

来使用js或jquery获取值

4 个答案:

答案 0 :(得分:1)

您可以使用:

 firstrowchkval = $('#tblSrc tr:eq(0) [type="checkbox"]').val();
 firstrowtxtval = $('#tblSrc tr:eq(0) [type="text"]').val();

答案 1 :(得分:1)

<强> Demo

您可以使用jQuery选择器

  • :first :检索第一个孩子。
  • :eq(n) :检索第n个孩子。

$('#tblSrc tr:first input[type="text"]').val();
$('#tblSrc tr:first input[type="checkbox"]').val();

知道是否选中了复选框,

$('#tblSrc tr:first input[type="checkbox"]').prop('checked')

或者,如果您需要从特定<td>

获取文字
$('#tblSrc tr:eq(0) td:eq(0)').text();
$('#tblSrc tr:eq(0) td:eq(1)').text();

答案 2 :(得分:1)

使用.each获取所有输入值

$("#tblSrc").find("td input").each(function(){
    alert(this.value)

});

或根据type选择器

获取单个值
var catchElement = $("#tblSrc").eq(0);
catchElement.find("[type=text]").val();
catchElement.find("[type=checkbox]").val();

答案 3 :(得分:1)

试试这个.. 如果你想要特定的行...那么可以为第二行放置eq(1)

chkval = $('#tblSrc tr:eq(0) [type="checkbox"]').val();
 txtval = $('#tblSrc tr:eq(0) [type="text"]').val();