问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

关于ajax请求action回调函数处理返回值的问题

发布网友 发布时间:2022-05-05 00:01

我来回答

3个回答

热心网友 时间:2022-04-22 18:58

你用json格式 把 string类型封装成 对象,然后再把json对象解析为 string类型,这样应该就OK了吧,。
function checkExist(){
//使用 Ajax 的方式 判断数据库中是否有该用户的名字(注册的时候)
alert($("#name").val());
$("#nameW").empty();
var url = "regiValiAndLoginAjax!isNameExist";
//获取表单值,并以json的数据形式保存到params中
var params = {name:$("#name").val()}
//使用$.post方式
$.post(
url,//服务器要接受的url
params,//传递的参数
function cbf(data){//服务器返回后执行的函数 参数 data保存的就是服务器发送到客户端的数据
//alert(data);
var member = eval("("+data+")");//包数据解析为json 格式
isExist = member.nameExist;
if(member.nameExist == "false"){
isNameT = "true";
namePass = true;
//$("div[id!='nameW4']").empty();
alert("恭喜你,用户名可用的啦");
$("#nameW4").show("slow");
$("#nameW3").hide("slow");
$("#name").attr("disabled", true);
$("nameW1").css("color", "#333333");

}
else{
alert("用户名已存在,请重新输入");
namePass = false;
$("#nameW3").show("slow");
$("#nameW4").hide("slow");
isNameT = "false";
}
},
"json"//数据传递的类型 json
);
}

上面是 jsp 的页面代码:
下面是java中的代码;
//以下是ajax的访问的方法开始
public String isNameExist(){//判断用户的注册名在数据库中是否存在的 啦

vali = new Validation();
name = this.getName();
System.out.println("userName = " + name);
boolean exist = false;
String isExist = "false";
try {
exist = this.userService.existsName(name);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
if(exist){
isExist = "true";
}else{
this.getSession().put("name", this.getName());
System.out.println(this.getSession().get("name").toString());
}
vali.setNameExist(isExist);
JSONObject jo = JSONObject.fromObject(vali);
result = jo.toString();
System.out.println(result);
return SUCCESS;
}
其实json格式对数据的封装是很方便的,,ajax + jquery + json 应该是完美的搭配吧 ,,,

热心网友 时间:2022-04-22 20:16

1:out.println("str"); //去掉引号
2:var obj = eval(data); //在这里你把data值转换成了对象
如果要直接返回str:var obj = data;追问嗯,我原来是那样输出的,在后台输出的那个字符串是:{"1":{"Dname":"光电信息科学技术学院"},"2":{"Dname":"化学化工学院"}};
我监控的是data这个变量,而不是obj这个变量,监控obj这个变量的时候显示未定义

追答var obj = ...这不是声明了吗?怎么会未定义?肯定是其它地方出错了,

热心网友 时间:2022-04-22 21:50

$.get("getDept", null, function (data) {
var obj = eval(data);
},json)追问我改了,加上之后那个回调函数直接不能执

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
说课包括哪些方面 说课内容包括()。 如何在手机百度上删除对话记录? 结核病是什么样的疾病? 曹丕17岁得了肺痨,明知自己命不长久,还要强争王位,是不是很自私呢?_百... 古代小说常出现的病名 急求一篇"生活小窍门"(500字)的作文 至今最有什么小妙招 健康的戒烟方法 笔记本电池锁死是什么原因引起的? jquery ajax $.post()请求 回调函数function(data){} data值{"ok":fa... 丈夫还建房装修能提取老婆的公积金吗 ajax使用post提交时的问题。 jquery 使用post进行提交,但返回的是404错误,这是什么情况? 如果ajax post方法url错误会报什么错误 请问三星A9100支持OTG功能吗 jQuery Ajax post 返回 undefined问题,求大神解答 用17台索尼微单64A7S拍摄节目是怎样一种体验 简单的ajax.post方法的问题 三星M3070支持OTG吗? ajax Post 一直返回的是error 为什么 SM一A9200三星能支持OTG功能? 为什么我用ajax以post方式传递变量时只要开头有空格就会得不到任何值... 有关Jquery ajax 提交后返回值异常的问题 请大神帮看一下哪里出问题了... 索尼A7S这款相机怎么样 简谈wordpress中的ajax请求,为什么会一直返回“0” 三星手机支持otg功能吗 相机索尼a7s电池续航能力怎么样 三星A8s支持OTG吗? 索尼a7s拍视频耐久度怎么样,拍视频会不会很损耗机子,a7s画质很好,机器质量怎么样,耐用吗 武汉市父母的还建房,能用我的公积金装修吗? $.ajax()返回后台错误信息 鄂州市还建房装修无两证能否提取公积金 jquery ajax 请求status==0.该怎么调试 Ajax post 方法没有反应。。而GET方法就行。。求帮助啊!!! 住房公积金必须拿到房产证才能取出来吗,贷款买的房子可以取出来吗? 买还建房可以提取公积金贷款吗 帮父母缴还建房房款,我可以提取自己的住房公积金吗? 大唐豪侠~天煞50级的上乘内功应该学什么 《风云乾坤诀》最新txt全集下载 《重生异世之乾坤诀》txt下载在线阅读全文,求百度网盘云资源 蜀门手游的仙禽打架主副法宝用什么? 《终极乾坤诀》最新txt全集下载 重生之乾坤诀by七夜乛朴少txt文件免费在线阅读 大唐豪侠招式 风云乾坤诀_by恨世追魂_txt全文免费阅读 剑侠情缘2各门派诀要的作用 风云乾坤诀_by恨世追魂_txt全文阅读,百度网盘免费下载 混沌乾坤诀txt全集下载 《九转乾坤诀》txt全集下载