jquery循环无法处理php数据

jquery loop not working with php data

本文关键字:php 数据 处理 循环 jquery      更新时间:2023-09-26

我正试图在jquery中为我的数组赋值它不能正常工作如果我像对第0个元素那样在没有for循环的情况下进行操作,它就可以正常工作但如果我把它放在循环中,它会变成未定义的

var array1=<?php echo json_encode($array2)?>;
var array2=<?php echo json_encode($array1)?>;
var chartData = [
    {
    student:  array1[0] ,
    marks: array2[0]
        }
];
var x=<?php echo json_encode($tquiz) ?>;
for (var i=1;i <= x ;i++ )
{
    chartData[i]=[
                    {
                     student :array1[i],                        
                     marks:array2[i]
                    }
                 ]    
}
for (var i=1;i <= x ;i++ )
{
    chartData[i]=[
                {student :array1[i],
                marks:array2[i]
              }
             ]
}

更改为

for (var i=1;i <= x ;i++ )
{
    chartData.push({student :array1[i], marks:array2[i]});
}

顺便说一句,我可以像这样重构你的最终代码:

var array1=<?php echo json_encode($array2)?>;
var array2=<?php echo json_encode($array1)?>;
var x=<?php echo json_encode($tquiz) ?>;
var chartData = [];
for (var i=0;i <= x ;i++ ) {
    chartData.push({student :array1[i], marks:array2[i]});
}

使用foreach循环而不是for循环,for循环中也有问题:

应该是:

for (var i=1;i <= x.length ;i++ )

我建议您使用foreach循环:

$.each( x, function( key, value ) {