dwz+thinkphp提示框弹出的问题

如图,不管是添加和删除,都会弹出“错误”if($list!==false){//保存成功$this->assign('jumpUrl',Cookie::get('_cur... 如图,不管是添加和删除,都会弹出“错误”

if ($list!==false) { //保存成功
$this->assign ( 'jumpUrl', Cookie::get ( '_currentUrl_' ) );
$this->success ('新增成功!');
} else {
//失败提示
$this->error ('新增失败!');
}
完成之后的代码。
弄了蛮久还是不知道怎么回事。也看了官方的例子,没发现有什么不同。
展开
 我来答
sisian_ren
2017-07-11 · TA获得超过125个赞
知道小有建树答主
回答量:111
采纳率:75%
帮助的人:50.4万
展开全部

ThinkPHP 3.2.3 + DWZ

改造ThinkPHP Json返回数据增加dwz框架需要的数据

修改ThinkPHP/Library/Think/Controller.class.php   ajaxReturn方法

在ajaxReturn 方法开始位置添加 如下代码

 //=======================
   //DWZ thinkPHP
   //Author:www.yicix.com
   //=======================
  
   if($data['status'] == 1){$status = 200;}
   if($data['status'] == 0){$status =300;}
   $data['statusCode'] = $status;
   $data['message'] = $data['info'];
   $data['navTabId'] = $_REQUEST['navTabId'];
   $data['callbackType'] = $_REQUEST['callbackType'];
   $data['forwardUrl'] = $_REQUEST['forwardUrl'];

以上内容有http://www.yicix.com网站提供

我是php工程师
2012-12-09 · TA获得超过149个赞
知道小有建树答主
回答量:354
采纳率:0%
帮助的人:199万
展开全部
操作dwz要求返回返回的数据格式是json格式而不是你返回的$this->success ('新增成功!');这个。
Form标签上增加onsubmit="returnvalidateCallback(this, xxxAjaxDone)"

弹出款和Ajax表单提交后服务器端需要返回以下json代码:
{
"statusCode":"200", //200代表成功,300代表操作失败

"message":"操作成功", //提示状态
"navTabId":"",
"rel":"",
"callbackType":"closeCurrent",
"forwardUrl":""
}

你可以调用这个函数

public function ajax_Return($status,$message,$type="closeCurrent",$nav="",$for=""){
$arr=array(
"statusCode"=>$status,
"message"=>$message,
"navTabId"=>$nav,//刷新那个页面
"forwardUrl"=>$for,
"callbackType"=>$type//关闭页面closeCurrent代表关闭,为空就不关闭页面
);
return json_encode($arr);
}
追问
官方例子也是这么写的,我重新新建一个项目,然后把官方的例子全部拷过来也是一样的问题。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
晁俊贺楼6M
推荐于2016-07-22 · 超过43用户采纳过TA的回答
知道小有建树答主
回答量:335
采纳率:50%
帮助的人:146万
展开全部
因为你返回的数据不是json的数据格式
你在你的comment类写这个类
public function ajax($status="",$message="",$type="",$navTabId="",$rel="",$forwardUrl=""){
$arr=array(
"statusCode"=>$status,
"message"=>$message,
"rel"=>$rel,
"navTabId"=>$navTabId,
"forwardUrl"=>$forwardUrl,
"callbackType"=>$type,
);
return json_encode($arr);
}
在你调用的时候这样写就可以了

echo $this->ajax(200, "保存成功!!!","closeCurrent","","addstudentpage");
更多追问追答
追问
官方例子也是这么写的,我重新新建一个项目,然后把官方的例子全部拷过来也是一样的问题
追答
如果不行的话,那你返回的数据还不是json的数据,你可以用火狐的firebug看看!
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式