2

我是编程初学者..

代码

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

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

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

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

尝试

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

}};

printns A,r,r,a,y

4

4 回答 4

4

正确的方法是使用 JSON:

var list = <?php echo json_encode($_REQUEST['cities']); ?>;
于 2013-05-10T12:36:46.053 回答
3

我假设您目前有两个问题:

  1. 您的 PHP 数组没有以 JavaScript 理解的任何方式编码。就用json_encode()这里吧。

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

 

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

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

于 2013-05-10T12:36:28.473 回答
1
<?php
$output = '';
foreach($_REQUEST['cities'] as $city){
    $output .= "'$city',";
}
$output = rtrim(",", $output);
?>
var course_category = [<?php echo $output; ?>];
于 2013-05-10T12:35:58.560 回答
0

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

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

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

于 2013-05-10T12:32:52.047 回答