我正在尝试通过ajax发送Get请求并输出服务器在html中返回的json数据.
但是,我收到了这个错误.
Uncaught TypeError: Cannot use 'in' operator to search for '324' in
[{"id":50,"name":"SEO"},{"id":22,"name":"LPO",}]
Run Code Online (Sandbox Code Playgroud)
这是我的代码,它通过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)
})
}
)
})
Run Code Online (Sandbox Code Playgroud)
这是我的PHP代码,以json格式返回查询结果.
public function actionAjax(){
$parentCatId=$_GET['parentCatId'];
$catData = Category::getTargetCategoryData($parentCatId);
echo CJSON::encode($catData);
Yii::app()->end();
}
Run Code Online (Sandbox Code Playgroud)
这个php输出的json数据是这样的.
[{"id":50,"name":"SEO"},{"id":22,"name":"LPO",}]
Run Code Online (Sandbox Code Playgroud)
任何人都知道如何解决这个问题?
请帮帮我.提前致谢 :)
我是Yii框架用户.
我主要在我的模型文件中将函数定义为公共静态函数,如下面的示例函数.
public static function getTrashedPostCount(){
$connection=Yii::app()->db;
$sql = "SELECT COUNT(publish_status)
FROM {{post}}
WHERE publish_status = 'trash'";
$command=$connection->createCommand($sql);
$postCount = $command->queryScalar();
return $postCount;
}
Run Code Online (Sandbox Code Playgroud)
我想知道我做错了.
模型文件中的大多数函数应该是静态函数吗?
如果我正在做或理解错误,请告诉我.
谢谢!!!