如何使用jquery在某些TR中获取TD的某些值

时间:2012-02-15 15:05:21

标签: jquery jquery-selectors checkbox tablerow

我有一张表,其中每行都有一个与行相关联的复选框(同名)。所以我想让用户选择一个或多个复选框并删除它。问题是行属于两类信息。所以我有一个类名为1的行和一个类名为2的行。这是我开发的代码:

function delete() {
    // here i take all the checkbox checked
    var checked = $("input[type=checkbox]:checked");
    // the number of checkbox checked
    var nbChecked = checked.size();
    // just to the dialog
    var b = nbChecked == 1 ? "notification" : "notifications";
    if (confirm('Are you sure to delete [' + nbChecked + '] ' + b + "?\nTake care.. you cannot resume the action!")) {
        if (nbChecked > 1) {
            // i want to generate a matrix. every row has an array of information.
            var arr1;
            // i take this code on web, but it doesn't work. I want to pur in sent all 
            // the tr with class sent and with input checkbox associated with it checked.    
            var sent = $('.mainTable').find("tr.sent input[type=checkbox]:checked").get();
            //HERE i want to iterate array sent to take all the information of td inside it and pur in arr1.
            //HERE THE SAME DONE STILL NOW BUT CHANGING TR CLASS              
        } else {
            // HERE IS SIMPLE
        }
    }
}​

编辑: 这一行的类名为sent

<TR valign=top name="rowSent1" style="background-color: #33CCCC" class="sent">
   <input type="hidden" value="messageRowSent1" name="message"/>
   <TD width=12>
      <div class="wpmd">
         <div align=center>
        <font color="#FF0000" class="ws7">
           <input type="checkbox" name="rowSent1" onchange="analizeCheckBox()"/> // onchange to check inputs checked
     </div>
      </div>
   </TD>
   <TD width=147 >
      <div class="wpmd">
         <div align=center>
        <font color="#000000" class="ws7"><I><div class="info1">info1</div></I></font>
     </div>
      </div>
   </TD>
   <TD width=156 >
      <div class="wpmd">
         <div align=center>
            <font color="#000000" class="ws7"><I><div class="info2">info2</div></I></font>
         </div>
      </div>
   </TD>
</TR>

然后我有其他行具有相同的类,其他行具有另一个类名。

你能帮帮我吗?感谢!!!!

1 个答案:

答案 0 :(得分:0)

我做了这个并且它的工作:

function getMatrix(type){
                var array;
               if(type=="sent"){
                  array = $("tr.sent input[type=checkbox]:checked").toArray()
               }else{
                  array = $("tr.period input[type=checkbox]:checked").toArray()
               }
                        var total = new Array();
                        for(var i=0;i<array.length;i++){
                            var tds = $(array[i]).parents("tr").children('td').toArray();
                            var mess = $(array[i]).parents("tr").children('input[type=hidden]').val();
                            var middle = new Array();
                            middle.push(mess);
                            for(var j=0;j<tds.length;j++){
                                var ii = $(tds[j]).text();
                                middle.push($.trim(ii));
                            }
                            total.push(middle);
                        }
                        return total;   
            }