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 ('新增失败!');
}
完成之后的代码。
弄了蛮久还是不知道怎么回事。也看了官方的例子,没发现有什么不同。 展开
if ($list!==false) { //保存成功
$this->assign ( 'jumpUrl', Cookie::get ( '_currentUrl_' ) );
$this->success ('新增成功!');
} else {
//失败提示
$this->error ('新增失败!');
}
完成之后的代码。
弄了蛮久还是不知道怎么回事。也看了官方的例子,没发现有什么不同。 展开
3个回答
展开全部
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网站提供
展开全部
操作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);
}
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);
}
追问
官方例子也是这么写的,我重新新建一个项目,然后把官方的例子全部拷过来也是一样的问题。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
因为你返回的数据不是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");
你在你的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看看!
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询