Jquery获取所有数组元素

时间:2013-05-10 12:31:56

标签: php javascript jquery

我正在编程初学者..

代码

 <script type="text/javascript">
     $(function() {
       var course_category = "<?php echo $_REQUEST['cities'] ?>";
       alert(course_category); // alerts as Array
   });

当我在php(print_r($cities);)中执行print_r时,我得到了

  Array ( [0] => BLR [1] => DEL [2] => HYD [3] => MUM

现在我想在上面的jquery中打印数组

尝试

 $.each(course_category, function(key,value){
   alert(value); 

}};

打印 A,r,r,a,y

4 个答案:

答案 0 :(得分:4)

正确的方法是使用JSON:

var list = <?php echo json_encode($_REQUEST['cities']); ?>;

答案 1 :(得分:3)

我认为你目前有两个问题:

  1. 您的PHP数组以任何方式编码,JavaScript理解。在这里使用json_encode()

  2. 如果你收到一个对象(并且数组只是那个问题的对象),你不能只使用alert()输出它们,如果你真的想看到内容的话。同样,您可以使用JSON.stringify()来解决此问题。

  3. $(function() {
     var course_category = "<?php echo json_encode( $_REQUEST['cities'] ); ?>";
     alert( JSON.stringify( course_category) );
    });
    

    如果您想稍后使用数组内容,请参阅普通for循环或jQuery的each()

答案 2 :(得分:1)

<?php
$output = '';
foreach($_REQUEST['cities'] as $city){
    $output .= "'$city',";
}
$output = rtrim(",", $output);
?>
var course_category = [<?php echo $output; ?>];

答案 3 :(得分:0)

您可以在jQuery中使用.each来迭代数组

  $.each(course_category , function(index, item) {
});

其实我不知道php.But你可以在jQuery中使用上面的代码迭代一个数组