读书人

ajax返回字符串的比较,该怎么解决

发布时间: 2012-04-13 13:50:24 作者: rapoo

ajax返回字符串的比较

JScript code
if(XMLHttp.readyState==4&&XMLHttp.status==200){    var a=XMLHttp.responseText;    a=a.replace(/\r\n/g,"");     var b="success";    if(a!=b)    {        document.getElementById("status").innerHTML=a;    }    else        eval("alert('添加成功');window.location='test2.php';");}

后台页面时echo "success";,返回的是"\r\nsuccess",然后经过正则替换后,成了"success",但是还是和b不相等,怎么回事呀,换成什么字符都是。

[解决办法]
var a=XMLHttp.responseText; 这行下面加上:
alert(a); //弹出什么。贴出来。
[解决办法]
看一下 a和b的length属性是否相同
如果照你说的 alert(a) 弹出的值显示的是 \r\nsuccess
那么它实际的内容应该是
JScript code
   var a = "\\r\\nsuccess";   var b = "success";
[解决办法]
或者你可以用正则匹配来判断:
var b=/success/g;
if(!b.test(a))
{
document.getElementById("status").innerHTML=a;
}
else
eval("alert('添加成功');window.location='test2.php';");
[解决办法]
var a=XMLHttp.responseText;
alert('[' + a + ']');
说说都看到了什么

只有弄清楚了返回的是什么,才能判断是什么问题
瞎猜是没有意义的

读书人网 >PHP

热点推荐