Jquery遍历表并替换其内容

时间:2013-05-02 08:28:33

标签: jquery html-table jquery-traversing

我有这张桌子,我必须使用Jquery遍历:

<table id="answer">
<thead>
  <tr class="grdheader">
    <td><input type="checkbox" style="border:0px"id="a1chkAll"></td>
    <td>Free Text</td>
    <td>Weighting</td>
  </tr>
</thead>
<tbody>
  <tr id="tdata">
    <td><input type="checkbox" value="440" id="achk" checked="checked"></td>
    <td>ABC</td>
    <td>2</td>
  </tr>
  <tr id="tdata">
    <td><input type="checkbox" value="440" id="achk" checked="checked"></td>
    <td>PQR</td>
    <td>4</td>
  </tr>
  <tr id="tdata">
    <td><input type="checkbox" value="440" id="achk"></td>
    <td>LMN</td>
    <td>6</td>
  </tr>
</tbody>

获取Array这样的内容,因为它已经检查了Checkbox

Array(
'<tr id="tdata">
    <td><input type="checkbox" value="440" id="achk"></td>
    <td><input type="textbox" value="ABC"></td>
    <td><input type="textbox" value="2"></td>
  </tr>',
'<tr id="tdata">
    <td><input type="checkbox" value="440" id="achk"></td>
    <td><input type="textbox" value="PQR"></td>
    <td><input type="textbox" value="4"></td>
  </tr>'
)

2 个答案:

答案 0 :(得分:1)

您可以使用jQuery .find和.child函数,也可以查看可能的类似问题here,也可以提供帮助。

答案 1 :(得分:1)

以下是解决方案,您可以在jsfiddle

查看此处

$(function(){

var pids = Array();                               
$('#answer tbody').find('input[type="checkbox"]:checked').closest('tr').map(function(){
    var trindex = $(this).index();
    var trhtml = $('#answer tbody tr')[trindex].outerHTML;
    pids.push(trhtml);
});

});