一个奇怪的AJAX问题

问题描述

我做了一个删除功能,删除后不刷新页面用JS刷新层里的内容就行.但是不知道为什么一删除就跳转回了首页.很郁闷.我哪也没有设置这个跳转.不过我在web.cml里设了一个session过滤器,session空的话就跳回首页.但是要进入到删除信息页面是要登录的,也就是session不会为空.很奇怪.请大家帮我看看.Struts的配置文件<actioninput="/UserLogin/ChicklingInfoManagement/Display.jsp"path="/delChickling"scope="request"type="org.springframework.web.struts.DelegatingActionProxy"><forwardname="ok"path="/UserLogin/ChicklingInfoManagement/Display.jsp"/></action>

Action里的部分代码,我想用循环输出集合中的信息:response.setContentType("text/xml");response.setCharacterEncoding("UTF-8");PrintWriterout=null;try{out=response.getWriter();}catch(IOExceptione){//TODOAuto-generatedcatchblocke.printStackTrace();}for(inti=0;i<list.size();i++){chi=(Chickling)list.get(i);out.print("雏鸡名称:<ahref='UserLogin/ChicklingInfoManagement/DisplaySingleOne.jsp?choice=");out.println(i+"'"+"target=_blank>"+chi.getChicklingName()+"</a>");out.print("&nbsp;批次:"+chi.getBatch()+"&nbsp;录入日期"+chi.getDate());out.println("&nbsp;雏鸡编号:"+chi.getChicklingNumber()+"&nbsp;");out.print("<ahref='UserLogin/ChicklingInfoManagement/UpDate.jsp?choice='"+i);out.println("target=_blank>修改</a>");out.print("<ahref="+request.getContextPath()+"/delChickling.do>删除</a><br>");}out.flush();out.close();returnnull;

页面的JS代码:varxhr;varoutMsg=""functioncreateXMLHttpRequest(){if(window.ActiveXObject){xhr=newActiveXObject("Microsoft.XMLHTTP");}elseif(window.XMLHttpRequest){xhr=newXMLHttpRequest();}}functioncreateQueryString(id){varqueryString="choice="+id;returnqueryString;}functiondoRequest(id){createXMLHttpRequest();varqueryString="delChickling.do?";queryString=queryString+createQueryString(id);xhr.onreadystatechange=handleStateChange;alert("Beforedo");xhr.open("POST",queryString,true);xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr.send(null);}functionhandleStateChange(){if(xhr.readyState==4){if(xhr.status==200){parseResults();}}}functionparseResults(){varresponseDiv=document.getElementById("Layer4");if(responseDiv.hasChildNodes()){responseDiv.removeChild(responseDiv.childNodes[0]);}responseDiv.innerHTML=xhr.responseText;}

页面的层代码:<divid="Layer4"align="left"><%for(inti=0;i<list.size();i++){Chicklingchi=(Chickling)list.get(i);%>雏鸡名称:<ahref="UserLogin/ChicklingInfoManagement/DisplaySingleOne.jsp?choice=<%=i%>"target=_blank><%=chi.getChicklingName()%></a>&nbsp;批次:<%=chi.getBatch()%>&nbsp;录入日期:<%=chi.getDate()%>&nbsp;雏鸡编号:<%=chi.getChicklingNumber()%>&nbsp;<ahref="UserLogin/ChicklingInfoManagement/UpDate.jsp?choice=<%=i%>"target=_blank>修改</a><ahref=""onclick="doRequest(<%=i%>)">删除</a><br><%}%></div>

解决方案

解决方案二:
麻烦大家帮忙看看啊
解决方案三:
还有我其他页面做了"返回"功能的超连接onclick="history.back()",无论在哪个页面,一点击都是回到首页...晕死.不知道什么问题
解决方案四:
varresponseDiv=document.getElementById("Layer4");alert(xhr.responseText);if(responseDiv.hasChildNodes()){responseDiv.removeChild(responseDiv.childNodes[0]);}alert("Setresponse");responseDiv.innerHTML=xhr.responseText;

这里面的两个alert都正常显示出来了.action返回来的字符都正常.但是就是会自动返回.在filter里测试过了,没有进到filter里.很奇怪这是怎么了

时间: 2024-09-18 15:16:02

一个奇怪的AJAX问题的相关文章

一个奇怪的问题使用ajax提交必须alert才能赋值

 在使用ajax提交的时候将返回值赋给一个变量,无论怎么写都没法赋值,刚开始怀疑js有错但是ie没有反应过来,多次清缓存.部程序都没效果 一个奇怪的问题,在使用ajax提交的时候将返回值赋给一个变量,无论怎么写都没法赋值,刚开始怀疑js有错但是ie没有反应过来,多次清缓存.部程序都没效果......最后只好一行一行的alert看原因出在哪里:奇怪的是加上了alert之后就可以赋值,删掉alert后就又不可以了.百度了一下发现是因为ajax默认是异步执行的,也就是并没有等待请求完毕就开始执行下一行

一个奇怪的问题使用ajax提交必须alert才能赋值_AJAX相关

一个奇怪的问题,在使用ajax提交的时候将返回值赋给一个变量,无论怎么写都没法赋值,刚开始怀疑js有错但是ie没有反应过来,多次清缓存.部程序都没效果......最后只好一行一行的alert看原因出在哪里:奇怪的是加上了alert之后就可以赋值,删掉alert后就又不可以了.百度了一下发现是因为ajax默认是异步执行的,也就是并没有等待请求完毕就开始执行下一行js语句了,导致赋值为null. 如果遇到ajax请求后有回调函数之类的问题就要加上async:false,注意如果是给false加上引号

ios-遇到了一个奇怪的问题

问题描述 遇到了一个奇怪的问题 今天我改了几处代码,在界面上屏蔽删除了一些东西,在模拟器上运行没问题,但是部署到真机上后,竟然是没改代码前的效果,那些删掉的屏蔽掉的东西竟然还在.这是怎么回事? 试了好几次都这样,把真机上的app删掉重装还是这样. 解决方案 好奇怪,试试clean一下 解决方案二: 把你开发机器上的生成文件都删除了,重新生成,再部署. 解决方案三: 在分析相关参数对性能影响的时候,遇到个奇怪的问题.在效果全开的情况下:1.?????? 单独关闭Caustics效果2.??????

mysql遇到一个奇怪问题

问题描述 mysql遇到一个奇怪问题 mysql的 select可以 但是insert 整个数据库的表都不行 后来重启了 就可以了 但是还是想不明白什么问题 求大神帮忙分析下 解决方案 你的insert语句是怎么样的,直接用my SQL的命令语句还是用客户端执行的呢? 解决方案二: 原因多多,贴出代码更好些 解决方案三: 可能是你对这张表执行操作,没执行完,所以这张表是被锁上了,也就是只读,然后你停止了服务,没执行完的操作就中断了,你再插入就成功了!也可能是其他原因,这个就要依情况而论了! 解决

linux kernel-linux netlink通信遇到一个奇怪的问题

问题描述 linux netlink通信遇到一个奇怪的问题 各位: 通过netlink实现用户态与内核态通信.目前遇到一个问题,用户态发消息后,内核态的回掉函数触发了,但是传进来的sk_buff->len 为0.没有有效数据.用户态显示发送成功.有谁遇到过吗?内核版本3.18

图片-一个奇怪的问题,不知道你们有没有遇到过!

问题描述 一个奇怪的问题,不知道你们有没有遇到过! eclipse里建立了一个web项目,但是项目里面有些图片能直接打开,有些图片打开是个链接(而且这个链接是无效的...)这是什么原因啊~ 解决方案 这个是默认文件的打开方式把. 你可以自定义图片的打开方式. 解决方案二: 在浏览器打开,然后找到打不开的图片,右键,选择属性,找url,看看文件名有没有错. 解决方案三: 检查无法打开的图片文件,是硬盘中是否存在是第一步: 如果存在,可以考虑: 1) 查看工程中对应的图片的属性,确认与硬盘存贮的目录

mvc-Asp.net MVC3 一个奇怪问题,求大神们帮忙

问题描述 Asp.net MVC3 一个奇怪问题,求大神们帮忙 想在controller中访问一个外部链接,代码如下:接收到的url为www.baidu.com public ActionResult RedirectToUrl(string url) { if(url == null) { return HttpNotFound(); } return Redirect(url); } 结果肯定是失败了...求问有什么办法解决...

我遇到一个奇怪的问题,php代码里面凡是含有//这样的注释,include 失败

问题描述 我遇到一个奇怪的问题,php代码里面凡是含有//这样的注释,include 失败 我遇到一个奇怪的问题,php代码里面凡是含有//这样的注释,就无法include 我是二次开发的,服务器上面原来的程序带//注释的就没有问题 但是我从服务器上面下载的代码到本地,所有的程序,导入eclipse后,每一行下面都会带一个空行 后来我把//的注释换成/*** /这样的就好了 下面是我贴出来的phpinfo信息,望大神指导 PHP Version 5.5.25 System Linux iZ238

c语言-以下异或加密代码提示一个奇怪的问题,数字上的错误后缀

问题描述 以下异或加密代码提示一个奇怪的问题,数字上的错误后缀 void EncryptXOR (long s[8]) { char key[4] = { 'mque' }; int a[4],b[4]; for (int i= 0; i<= 3; i++) { a[i] = int(s[2i+1] * 16 + s[2i]); } for (int j = 0; j <= 3; j++) { b[j] = a[3-j] ^int( key[j]); printf("%c"