zoukankan      html  css  js  c++  java
  • ajax返回值中有回车换行、空格的解决方法分享

    最近在写一个页面,用jquery ajax来实现判断,刚写好测试完全没有问题,过了两天发现出现问题,判断不成了。后来发现所有alert出来的返回值前面都会加若干换行和空格。(至今不明白,同一台电脑,同样的环境,为什么出现这样的问题)

    后来在网上发现也有人遇到了相同的问题。无论是jquery $.ajax  $.get  $.post 在或者是原声的XMLHttpRequest方法都存在这种问题,这样调用的时候和判断的时候,有时候会出错。看例子

    ajax代码:


    代码如下:
    $.get('ajax.php',{'name':name},function(data){
       alert(data);     
    })

    ajax.php


    代码如下:
    <?php
        $username = $_GET['name'];
        echo $username;
    ?>

    明显name为google的字符串前面有换行或空格,这样严重的影响了程序的稳健性,我都遇到出现了问题,下面程序的判断都不成立。因此我们需要用正则表达式的方法来去除,因此我们可以这样写


     代码如下:
    $.get('ajax.php',{'name':name},function(data){
        newData=data.replace(/s/g,'');
        alert(newData);     
    })

    ajax.php不用变

    然后就没有换行空格了。

    我在网上看到的都是用

    newData=data.replace(/rn/g,'');

    但我发现这个正则对我的有问题,前面只减少了一部分空白字符,因此我判断空白字符里应该有除了换行回车外的其余空白字符,因此选用了s。

    /.../g 是正则表达式的属性, 表示全文匹配, 而不是找到一个就停止


    详细出处参考:http://www.jb51.net/article/42374.htm

  • 相关阅读:
    JavaScript箭头函数 和 generator
    JavaScript闭包
    JavaScript高阶函数 map reduce filter sort
    JavaScript函数定义和调用 变量作用域
    python实现遗传算法求函数最大值(人工智能作业)
    PAT 1003
    制作U盘启动盘之后的恢复
    异步IO
    CCF201703-3 Markdown
    SQLAlchemy
  • 原文地址:https://www.cnblogs.com/webqiand/p/4602911.html
Copyright © 2011-2022 走看看