ajax xmlhttp.responsetext,用ajax实现异步刷新,xmlHttp.responseText接到的值不对

"博客内容讲述了在使用AJAX实现异步刷新时遇到的问题,即接收到的JSON响应值不正确。问题源于后台返回的`return "fail"`导致的页面跳转。通过删除可能导致跳转的指令,如`return mapping.failure`,解决了问题。同时,文章提到了使用Struts2框架,JSON库和JS处理JSON数据的方法。"
摘要由CSDN通过智能技术生成

用ajax实现异步刷新,xmlHttp.responseText接到的值不对

用ajax实现异步刷新,xmlHttp.responseText接到的值不对

js:

var xmlHttp;

var json;

function createXmlHttpRequest(){

if(window.XMLHttpRequest){

xmlHttp = new XMLHttpRequest;

}else{

xmlHttpp = new ActiveXObject("Microsoft.XMLHTTP");

}

}

function startRequest(path,id){

createXmlHttpRequest();

switch(id){

case 1:

xmlHttp.onreadystatechange = handleStategetClasstype;

break;

case 2:

xmlHttp.onreadystatechange = handleStategetTeacher;

break;

}

xmlHttp.open("get",path);

xmlHttp.send(null);

}

function getClassinfo(url){

startRequest(url+"/teacherAction_findClasstype.action",1);

}

function getTeacher(url){

var id = document.getElementById("check_type").value();

startRequest(url+"teacherAction_findClassteacher.action",2);

}

function handleStategetClasstype(){

if(xmlHttp.readyState==4){

if(xmlHttp.status==200){

var root = document.getElementById("check_type");

if(root.options.length==1){运动会口号

alert(xmlHttp.responseText);

json = eval('('+xmlHttp.responseText+')');

for(i=0;i

var option = new Option(json[i].classtypeid,json[i].classtypename);

root.add(option);

}

}

}

}

}

jsp中:


班级类型:

===请选择===

教师姓名:

===请选择===

TeacherAction:

public String findClasstype() throws IOException{

List list = service.getClasstype();

String json = JsonUtils.listToJson(list);

System.out.println("json:"+json);

PrintWriter out = ServletActionContext.getResponse().getWriter();

out.write(json);

out.flush();

return "fail";

}

这个在后台输出

json:[{"classtypeid":1,"classtypename":"JAVA"},{"classtypeid":2,"classtypename":"C++"},{"classtypeid":3,"classtypename":".NET"},{"classtypeid":4,"classtypename":"PHP"},{"classtypeid":5,"classtypename":"QRS"},{"classtypeid":6,"classtypename":"Android"}]

json值没有问题,

应该不是jar包问题,我用的struts2里面有json-lib-2.1.jar,js中也加了json.js这个文件

肯定是你在后台有用过跳转指令,把跳转指令删除。

比如struts1的后台action把return mapping.f******这一串换成return null

不让后台有页面跳转

真是这个问题,单以前就这么写的有return"fail",没有问题啊,但是这次就出问题了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值