cliuyang的专栏

computer science

解决 在生成的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;

              }

           });

 

阅读更多
个人分类: js
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

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

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭