手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜的Vultr , 注册 | 登陆

Discuz Uchome 小技巧

首页 > PHP >

discuz的ajaxpost功能有点强大,但缺点也很明显,如果ajaxpost提交一个FORM,那么返回的时候只能显示showmessage的内容,而不会主动跳转,因此这里就有一个小技巧 了。。

比如默认submit按钮这样操作:onclick="ajaxpost('formid')";之类的,我们可以先这样。。
onclick="$('__formid').innerText='';ajaxpost('formid');checkPostResult();";
含义其实很简单,先把ajaxpost提示信息所在的div内容清空。然后提交。最后,根据返回值来判断。。

JavaScript代码
  1. function checkPostResult(){  
  2.     var cid = setInterval(function(){  
  3.         if( $('__formid').innerText == 'success'){  
  4.                 alert('提交成功');  
  5.                 location.href='xxxxx.php';  
  6.                 clearInterval(cid);  
  7.         }  
  8.     },1000);  
  9. }  

这个处理也很简单,为什么是用setInterval和clearInterval,主要是由于ajax是异步操作,如果不用setInterval方法 ,那么在ajaxpost结束的时候,其实提示信息还没有append到提示信息所在的ID里,所以用setInterval方法先延迟然后循环处理最后再结束提示。。。

clearInterval用的不太对,但短时间内想不到更好的。先这样临时解决喽。




本站采用创作共享版权协议, 要求署名、非商业和保持一致. 本站欢迎任何非商业应用的转载, 但须注明出自"易栈网-膘叔", 保留原始链接, 此外还必须标注原文标题和链接.

Tags: discuz, uchome, tips

« 上一篇 | 下一篇 »

只显示10条记录相关文章

PHP sendmail (浏览: 39249, 评论: 7)
同门网 (浏览: 21562, 评论: 1)
WordPress 2.9 beta1 发布 (浏览: 19922, 评论: 1)
javascript模版系统 (浏览: 19820, 评论: 0)
wxPython (浏览: 19567, 评论: 0)
转:WebSphere MQ7 在Ubuntu上的安装 (浏览: 17985, 评论: 0)
值得一用的5.3RC4 (浏览: 15863, 评论: 1)
关于上一篇“遗憾” (浏览: 15216, 评论: 0)

发表评论

评论内容 (必填):