discuz 提交表单后只提示、不跳转

discuz教程
做了个插件记录工作中的一些临时信息,需要表单提交后只提示、不跳转,以方便继续编写,但是showmessage提示后是要跳转的,不满意。

想要做成像积分变动那种蓝色或橙色的居中横条提示信息,自动消失,不跳转的。

提示信息的js代码是找到了:

<span onclick="showPrompt(null, null, '哈哈', 2000);">[点击我看看是什么效果]</span>

<a href="javascript:;" onclick="showDialog('msg', 'confirm', 'Pls Confirm', function(){alert('Confirm');},1,function(){alert('Cancel');},'','','','1')">showDialog Test</a>

复制代码

但是怎么和系统的showmessage()配合一直是个谜。。。

后来根据网上信息showmessage()函数配合AJAX弹窗进行了改动,发现弹窗是ajax了,但弹窗自动关闭之后还是刷新了页面,不满意。

今天夜班,重新看了下showmessage()的参数:

/*** 显示提示信息* @param $message - 提示信息,可中文也可以是 lang_message.php 中的数组 key 值* @param $url_forward - 提示后跳转的 url* @param $values - 提示信息中可替换的变量值 array(key => value ...) 形式* @param $extraparam - 扩展参数 array(key => value ...) 形式* 跳转控制 header header跳转 timeout 定时跳转 refreshtime 自定义跳转时间 closetime 自定义关闭时间,限于 msgtype = 2 locationtime 自定义跳转时间,限于 msgtype = 2 内容控制

alert alert 图标样式 right/info/error return 显示请返回 redirectmsg 下载时用的提示信息,当跳转时显示的信息样式 0:如果您的浏览器没有自动跳转,请点击此链接 1:如果 n 秒后下载仍未开始,请点击此链接 msgtype 信息样式 1:非 Ajax 2:Ajax 弹出框 3:Ajax 只显示信息文本 showmsg 显示信息文本 showdialog 关闭原弹出框显示 showDialog 信息,限于 msgtype = 2 login 未登录时显示登录链接 Ajax 控制 handle 执行 js 回调函数*/复制代码

发现“跳转控制”里面的“关闭”和“跳转”区别,之前一直是用的locationtime => true,这是跳转。

尝试换成closetime => true关闭

showmessage('修改成功', '/zhuanlan/article/n'.$aid, array(), array('showdialog' => 1, 'showmsg' => true, 'msgtype' => 2, 'closetime' => true, 'alert' => 'right'));

标签: