在jQuery中迭代PHP数组?

Ang*_*ine 12 php arrays foreach jquery

如何在jQuery中迭代PHP数组?我在PHP中有一个名为的数组$viewfields.如何使用jQuery迭代此数组的每个元素?

编辑1

<?php foreach ($viewfields as $view): ?>           

if(<?=$view['Attribute']['type'];?>=='text'||<?=$view['Attribute']['type'];?>=='number')
{ 
     $("<input id=input<?=$view['Attribute']['sequence_no'];?> type= 'text' style= 'width:<?=$view['Attribute']['size'];?>px' data-attr=<?=$view['Attribute']['type'];?> ></input><br>").appendTo("#fb_contentarea_col1down21 #<?=$view['Attribute']['sequence_no'];?>");
}
Run Code Online (Sandbox Code Playgroud)

如果我给

$.each(arrayfromPHP,function(i,elem){

}
Run Code Online (Sandbox Code Playgroud)

如何在jQuery中编写$ view ['Attribute'] ['type']的代码?我认为elem ['Attribute'] ['type']不起作用?

编辑2

elem ['Attribute'] ['type']确实有用

Ion*_*tan 40

var arrayFromPHP = <?php echo json_encode($viewFields) ?>;

$.each(arrayFromPHP, function (i, elem) {
    // do your stuff
});
Run Code Online (Sandbox Code Playgroud)

为了更好地理解事物如何连接在一起(感谢Jonathan Sampson):

<!DOCTYPE html>

<html>
<head>
<script type="text/javascript">
var arrayFromPHP = <?php echo json_encode($viewFields) ?>;

$.each(arrayFromPHP, function (i, elem) {
    // do your stuff
});
</script>
</head>
<body>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

您当然可以将该SCRIPT标记放在页面中的任何位置,或者甚至可以arrayFromPHParrayFromPHP声明为全局的外部脚本中引用.

编辑

给定这个PHP数组:

$viewFields = array(
    'Attributes' => array(
        'type'  => 'foo',
        'label' => 'bar',
    ),
    'Attributes' => array(
        'type'  => 'foo',
        'label' => 'bar',
    ),
);
Run Code Online (Sandbox Code Playgroud)

使用jQuery访问其元素将如下所示:

// json_encode() will output:
// {"Attributes":{"type":"foo","label":"bar"}}

$.each(arrayFromPHP, function (i, elem) {
    alert(elem.type);
    alert(elem.label);
});
Run Code Online (Sandbox Code Playgroud)