【发布时间】:2013-09-01 08:45:23
【问题描述】:
我正在尝试通过 ajax 发送 Get 请求并输出服务器以 html 格式返回的 json 数据。
但是,我收到了这个错误。
Uncaught TypeError: Cannot use 'in' operator to search for '324' in
[{"id":50,"name":"SEO"},{"id":22,"name":"LPO",}]
这是我通过 ajax 向 php 文件发送 Get 请求的代码。 当我使用 $.each 方法时,它得到了我在上面显示的错误。
parentCat.on('change', function(e){
parentCatId = $(this).val();
$.get(
'index.php?r=admin/post/ajax',
{"parentCatId":parentCatId},
function(data){
$.each(data, function(key, value){
console.log(key + ":" + value)
})
}
)
})
这是我的 PHP 代码,它以 json 格式返回查询结果。
public function actionAjax(){
$parentCatId=$_GET['parentCatId'];
$catData = Category::getTargetCategoryData($parentCatId);
echo CJSON::encode($catData);
Yii::app()->end();
}
这个php输出的json数据是这样的。
[{"id":50,"name":"SEO"},{"id":22,"name":"LPO",}]
有人知道如何解决这个问题吗?
请帮帮我。 在此先感谢:)
【问题讨论】:
-
那个错误信息是从哪里来的?
-
能否在
eachstmt 前添加console.log(data),看看控制台打印了什么 -
谢谢!我的问题现在解决了:)
-
这可能对某人有所帮助 - 登陆这里,但我的问题是使用
$.each('selector')...而不是$('selector').each(...
标签: php javascript jquery ajax yii