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

WBOY
發布: 2016-06-13 13:38:03
原創
728 人瀏覽過

ajax返回字符串的比较

JScript code
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
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";
<br><font color="#e78608">------解决方案--------------------</font><br>或者你可以用正则匹配来判断: <br>  var b=/success/g;<br>   if(!b.test(a))<br>   {<br>       document.getElementById("status").innerHTML=a;<br>   }<br>   else<br>       eval("alert('添加成功');window.location='test2.php';");
<br><font color="#e78608">------解决方案--------------------</font><br>var a=XMLHttp.responseText;<br>alert('[' + a + ']');<br>说说都看到了什么<br><br>只有弄清楚了返回的是什么,才能判断是什么问题<br>瞎猜是没有意义的<br> <div class="clear">
                 
              
              
        
            </div>
登入後複製
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!