解决 在生成的thickbox页面使用ajax的“缓存问题”

在项目中,使用了thickbox生成表单页面a.jsp。

在a.jsp中使用了ajax从数据库中判断填入的用户名是否重复。

代码如下:

$.get('hmdicAction.action',{'manage.FDicname':fname},function(res){

              if(res=='error'){

                  $('#nameErr').attr('innerHTML', '该名称已存在,请重新输入');

                  $('#Txt_Name')[0].value="";

                  $('#Txt_Name').focus();

                  return;

              }else if(res=='nullname'){

                  $('#nameErr').attr('innerHTML', '名称不允许为空');

                  $('#Txt_Name')[0].value="";

                  $('#Txt_Name').focus();

                  return;

              }else if(res=='ok'){

                  $('#nameErr').attr('innerHTML', '');

                  alert('OK');

                  return;

              }

           });

但是发现,在连续多次新建a.jsp时,当输入的用户名相同时,并没能执行hmdicAction.action,而是返回了上次执行hmdicAction.action的结果,好像进行过缓存似的,由于对thickbox及jquery不熟,将问题定位在jquery中,

后来问高手,得之是IE在作祟。。

*************************************解决:*************************************
在调用ajax传入参数时添加时间参数,这样,每次url都不相同,就不会被IE误认为是一个请求喽~~~

$.get('hmdicAction.action',{'manage.FDicname':fname,'ttime':d.getTime()},function(res){

完整代码如下:

var d=new Date();

$.get('hmdicAction.action',{'manage.FDicname':fname,'ttime':d.getTime()},function(res){

              if(res=='error'){

                  $('#nameErr').attr('innerHTML', '该名称已存在,请重新输入');

                  $('#Txt_Name')[0].value="";

                  $('#Txt_Name').focus();

                  return;

              }else if(res=='nullname'){

                  $('#nameErr').attr('innerHTML', '名称不允许为空');

                  $('#Txt_Name')[0].value="";

                  $('#Txt_Name').focus();

                  return;

              }else if(res=='ok'){

                  $('#nameErr').attr('innerHTML', '');

                  alert('OK');

                  return;

              }

           });

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值