从数组信息中获取分离的字符串

时间:2014-06-12 11:09:08

标签: jquery arrays checkbox html-table row

以下代码将来自html表格的复选框的行信息存储到数组中:

    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js" type="text/javascript"></script>

    <script>
    function myFunc() {
    var myValues = new Array();

    $.each($("input[name='selection[]']:checked").closest("td").siblings("td"),
           function () {
                myValues.push($(this).text());
           });

       alert("values: " + myValues.join("  "));

     }

  </script>

    <table border="2">
    <tr>
      <th>Select</th>
        <th>ID</th>
        <th>NAME</th>
        <th>JOB</th>
    </tr>
    <tr>
       <td align="center"><input type="checkbox" class="selection" name="selection[]"></td> 
        <td>11</td>
        <td>John</td>
         <td>Doctor</td>
    </tr>
    <tr>
        <td align="center"><input type="checkbox" class="selection" name="selection[]"></td>
        <td>102</td>
        <td>Anne</td>
        <td>Pilot</td>
    </tr>
    <tr>
        <td align="center"><input type="checkbox" class="selection" name="selection[]"></td>
        <td>203</td>
        <td>Laura</td>
        <td>Teacher</td>
    </tr>

    </tr>
    </table>
     <input type="button" value="get it" onclick="javascript:myFunc(); return false;">

现在我需要在逗号分隔的字符串中选择id(如果选中的所有复选框都是:str1="11,102,203";

ids加上另一个字符串中所选行中的其余信息(如果选中的所有复选框都是:str2 = "11, John, Doctor,102, Anne,Pilot, 203, Laura, Teacher";)。

我不知道怎么做。我正在考虑为myValues数组添加键,但我不知道它是否是一个好方法(并且不知道如何做到这一点......对于jquery来说太新了:()

1 个答案:

答案 0 :(得分:0)

解决:看看这对你有帮助

虽然我不确定你想要2个字符串的样子,但我已经为你创建了一个演示 在所选行中获取不同的值。 我建议你循环选中复选框td并使用next()函数获取行中的不同值。

$.each($("input[name='selection[]']:checked").closest("td"),function (index,item) {
...
});

JS小提琴演示 http://jsfiddle.net/kTDPK/

对于字符串输出,请检查浏览器的控制台。