当前位置:Gxlcms > PHP教程 > 请问jquery中的ajax如何只能发送一次数据,第二次发送如何无效

请问jquery中的ajax如何只能发送一次数据,第二次发送如何无效

时间:2021-07-01 10:21:17 帮助过:26人阅读

请教jquery中的ajax怎么只能发送一次数据,第二次发送怎么无效?
本帖最后由 ziyou16036 于 2014-08-27 21:45:37 编辑

用jquery和ajax来异步刷新验证用户名和密码,可是怎么只能提交第一次有用呢?网上搜的方法我都试过了,可是没有用,到底该怎么办呢?我把代码贴出来给你们看看,希望高手可以解决!



$.ajax({
type:'POST',
url:'/public/logincheck',
dataType:'json',
data:{username:$("input[name='username']").val(),password:$("input[name='password']").val()},
success: function(json){
if(json.message==4){
var index = parent.layer.getFrameIndex(window.name); //获取当前窗体索引
parent.location.reload();//刷新父页面
parent.layer.close(index); //执行关闭
}else if(json.message==3){
addTip("用户名或密码不正确!");

}
}
});


我用的是zend framework框架做的项目,url地址中填写的是控制器的地址!


------解决思路----------------------
ajax本身看不出什么,你触发事件是什么?调试看看,第二次有没有触发此ajax方法
------解决思路----------------------
点击登录的地方,是否是绑定的click方法
------解决思路----------------------
$.ajax 应有 cache : false, 属性,否则服务端不阻止缓存时,至少IE不会刷新缓存数据

回调中,你有 parent.location.reload();//刷新父页面
自然自己也被刷新了
那么第二次发送是什么意思呢?
------解决思路----------------------
cache:false
------解决思路----------------------
在AJAX发送的URL后面,加上时间戳,确保每次发送的URL不一样
------解决思路----------------------
引用:
$.ajax 应有 cache : false, 属性,否则服务端不阻止缓存时,至少IE不会刷新缓存数据

回调中,你有 parent.location.reload();//刷新父页面
自然自己也被刷新了
那么第二次发送是什么意思呢?


同意此观点

人气教程排行