jquery $.ajax() success回调函数问题

success: function(data){
if(data.equals("admin")){
location.href = "admin.jsp";
}
else{
$("#head").html($.ajax({url: "head.jsp",async: false}).responseText)
}

}

这个data到底是什么类型的数据,为什么我这个if执行不了,后台已经能成功处理数据,用alert(data)能成功提示出后台处理过的数据,就是这个if执行不了,看看我加粗的地方写的对吗?

3个回答

equals是java字符串的方法吧,javascript字符串没这个方法。。JavaScript不是java,不要搞混了
改为if(data=="admin")

qq_27868825
王汪汪同学 回复showbo: 找到问题了,调试后发现success根本没有进入,所以才没有执行if语句
3 年多之前 回复
qq_27868825
王汪汪同学 回复showbo: 谢谢这么耐心回复我!我打开了f12开发人员工具,我想调试js,可是一直报错:源代码不可用于此位置,你知道是什么原因吗
3 年多之前 回复
showbo
支付宝加好友偷能量挖 回复qq_27868825: 你得确认你进了success回掉没有先,自己f12打开浏览器开发工具看是否报错,ajax请求的url地址返回什么内容,是200状态还是500服务器报错了什么的。进入了success的话自己alert(data.length)看是多少,如果不是5那么说明有空格什么的,要用$.trim(data)去掉收尾空白
3 年多之前 回复
qq_27868825
王汪汪同学 谢谢指正!可是还是不行...登陆管理员后还是执行不了if语句块...
3 年多之前 回复

可能是个字符串
如果是json字符串的话,可以通过var obj=eval(data);使它变成json对象
这样就可以用obj.name这样的方式来获取属性。

至于js里用equals方式来比较字符串,是不行的。除非equals是json对象里的方法。js都是用==来比较的。

qq_27868825
王汪汪同学 谢谢指正!可是还是不行...登陆管理员后还是执行不了if语句块...
3 年多之前 回复

也可以用indexOf("")>=0判断

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问