欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

ajax传值和回调原理

程序员文章站 2022-04-18 22:44:39
...
刚开始学习ajax,
大牛门帮我看看有没有问题?
$.get("__URL__/yanz",{bid:bid,b:v,},function(data,status){			alert(data.aa);			alert(status);		},"json");


if ($cdata){	 		echo json_encode($cdata);	 		$this->ajaxReturn($cdata,'查询成功',1);//主要是这里回调	 	}else{$this->error("数据不存在");}

用是thinkphp的,本想做一个把ID和名称通过ajax传值,然后查询数据库中是否存在。不存在跳转URL。
问题:值收到了,但回调和跳转URL不知道怎么搞。大牛请指导,


回复讨论(解决方案)

设置 config
‘DEFAULT_AJAX_RETURN’ => 'JSON'

将返回如下结构
{
"status“ : "1",
"info" : "查询成功",
"data" : 你的$cdata形成的数据体
}

假设你的数据体中有 aa 一项,则 alert(data.data.aa)

注意:不要 echo json_encode($cdata);
切记!因为你要返回的是 json,所以不能有其他任何输出,否则 json 将解码失败

设置 config
‘DEFAULT_AJAX_RETURN’ => 'JSON'

将返回如下结构
{
"status“ : "1",
"info" : "查询成功",
"data" : 你的$cdata形成的数据体
}

假设你的数据体中有 aa 一项,则 alert(data.data.aa)

注意:不要 echo json_encode($cdata);
切记!因为你要返回的是 json,所以不能有其他任何输出,否则 json 将解码失败


非常感谢版主,改了返回结构可以了。
我还有个问题:能不能直接返回$this->success()和$this->error()链接和内容?

不知道,那是你框架的事情
没用过,不好说

相关标签: 原理 ajax