Javascript 在多维数组中添加复选框选定值

Javascript 在多维数组中添加复选框选定值,javascript,jquery,Javascript,Jquery,我正在工作。如何将每个选定行作为数组添加到数据[]中,使其看起来像这样: [{"Cell phone":"BlackBerry Bold 9650","Rating":"2/5","Location":"UK"}, {"Cell phone":" Samsung Galaxy","Rating":"3/5","Location":"US"}] 以下是我的代码: var data = []; function myfunc(ele) { var values = new Array();

我正在工作。如何将每个选定行作为数组添加到
数据[]
中,使其看起来像这样:

[{"Cell phone":"BlackBerry Bold 9650","Rating":"2/5","Location":"UK"},
{"Cell phone":" Samsung Galaxy","Rating":"3/5","Location":"US"}]
以下是我的代码:

var data = [];
function myfunc(ele) {

 var values = new Array();
       $.each($("input[name='case[]']:checked").closest("td").siblings("td"),
              function () {
                   values.push($(this).text());
              });

       alert("val---" + values.join (", "));
 }


$(document).ready(function() {
    $("input.case").click(myfunc);
});
检查这是否有效

这是你的电话号码

试试这个:

var data =  {};
function myfunc(ele) {

    //var values = new Array();
    var k = 0;
    var j = 0;
    data[k] =  {};
    $.each($("input[name='case[]']:checked").closest("td").siblings("td"),
                 function () {  
                     if(j==3)
                     {
                          k = k+1;
                          data[k] =  {};             
                          j = 0;
                     }                 
                     //values.push($(this).text());
                     data[k][j] = $(this).text();
                     j=j+1;

                  });

           console.debug(data);    
           //alert("val---" + values.join (", "));
     }


$(document).ready(function() {
    $("input.case").click(myfunc);
});

注意:如果需要,可以在我的代码中使用[]和数据变量代替{}。你需要在三个地方更换。谢谢。

你的小提琴很好。有什么问题吗?你想要
数据.push($(this).text())
而不是
值.push($(this).text())
?嗨,安德鲁,谢谢你的回复,但我想要的是有一个数组存储在数据[]
var data =  {};
function myfunc(ele) {

    //var values = new Array();
    var k = 0;
    var j = 0;
    data[k] =  {};
    $.each($("input[name='case[]']:checked").closest("td").siblings("td"),
                 function () {  
                     if(j==3)
                     {
                          k = k+1;
                          data[k] =  {};             
                          j = 0;
                     }                 
                     //values.push($(this).text());
                     data[k][j] = $(this).text();
                     j=j+1;

                  });

           console.debug(data);    
           //alert("val---" + values.join (", "));
     }


$(document).ready(function() {
    $("input.case").click(myfunc);
});