创建数组变量

时间:2011-04-05 11:14:44

标签: jquery variables multidimensional-array jqplot

我想创建这种输出

var s1 = [['Sony',7],['Samsung',5],['LG',8]];

这样我就可以用它来传递我的图表作为变量

从我的ajax的重新开始

success: function(data){

    //code to extract the data value here

    var s1= need to create the data here

    $.jqplot('chart',[s1],{ blah blah blah

}
成功函数中的

“data”返回此表格布局

<table id="tblResult">
    <tr class="tblRows">
        <td class="clsPhone">Sony</td><td class="clsRating">7</td>
    </tr>
    <tr class="tblRows">
        <td class="clsPhone">Samsung</td><td class="clsRating">5</td>
    </tr>
    <tr class="tblRows">
        <td class="clsPhone">LG</td><td class="clsRating">8</td>
    </tr>
</table>

你能帮助我为此创建逻辑吗?

提前致谢

修改 我正在寻找类似以下的解决方案:

var s1;
$(".tblRows").each(function(){
    // here I don't know exactly on what to do
    //s1.push($(".clsPhone").text(),$(".clsRating").text()));
});
// all I wanted is to make the resul s1=[['Sony',7],['Samsung',5],['LG',8]];

因为jqplot需要这种参数

s1=[['Sony',7],['Samsung',5],['LG',8]];
$.jqplot('chart',[s1],{
        renderer:$.jqplot.PieRenderer,
        rendererOptions:{
            showDataLabels:true,
            dataLabelThreshold:1
        }
    }
});

所以我正在寻找一种从数据中创建变量s1的值的方法 这有可能吗?

2 个答案:

答案 0 :(得分:14)

var s1 = [];
$(".tblRows").each(function(){
    // create a temp array for this row
    var row = [];
    // add the phone and rating as array elements
    row.push($(this).find('.clsPhone').text());
    row.push($(this).find('.clsRating').text());
    // add the temp array to the main array
    s1.push(row);
});

答案 1 :(得分:0)

您可以这样做:

var row = [];
$(".tblRows").each(function () {
    row.push([$(this).find('.clsPhone').text(),
              $(this).find('.clsRating').text()]);
});

$.jqplot('chart', [row], {
    //... 
});