• W3School里的一个错误(读者谨防被它的写法误导)


    今天同事拿了一段代码让我看,说为什么他代码照着W3School写的,效果怎么出不来,

    他看的是W3School里的jQuery ajax - post() 方法的官方教程,

    网址是这个:http://www.w3school.com.cn/jquery/ajax_post.asp

    点击“亲自试一下源代码”链接就可以过去执行代码查看效果,确实效果没问题

    里面的代码大致如下:

    <script type="text/javascript" src="/jquery/jquery.js"></script>
    <script type="text/javascript">
    $(document).ready(
    function(){
    $(
    "input").keyup(function(){
    txt
    =$("input").val();
    $.post(
    "/jquery/gethint.asp",{suggest:txt},function(result){
    $(
    "span").html(result);
    });
    });
    });
    </script>

    <p>请在下面的输入框中键入一个名字(a 到 z 的字符):</p>
    名字:<input type="text"/>
    <p>建议:<span></span></p>

    但我同事犯了一个错误,直接在本地手动建了这个asp文件,然后双击那个html文件运行,这样如何能解析asp文件里的数据;

    我部署到IIS上后一直显示"no suggestion",于是查看了下asp文件,

    尼玛,这不是误导读者吗,里面清清楚楚的写了:

    '获得来自 URL 的 q 参数
    q=ucase(request.querystring("q"))

    调用的时候参数q在哪(上面红色标识出来的),莫非我孤陋寡闻,这样也可以?

    正当我怀疑自己的时候,发现他在其他地方用原生Ajax写的时候用的是get方式带了参数,

    function showHint(str)
    {
    var xmlhttp;
    if (str.length==0)
    {
    document.getElementById("txtHint").innerHTML="";
    return;
    }
    if (window.XMLHttpRequest)
    {// code for IE7+, Firefox, Chrome, Opera, Safari
    xmlhttp=new XMLHttpRequest();
    }
    else
    {// code for IE6, IE5
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.onreadystatechange=function()
    {
    if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
    }
    }
    xmlhttp.open("GET","gethint.asp?q="+str,true);
    xmlhttp.send();
    }

    所以,敢说他没写错?

    你有何见解?欢迎指教,谢谢!

    上面的代码修改成这样就是OK的:

    $.post("gethint.asp",{"q":txt},function(result){
    $("span").html(result);
    });

    同时asp文件里的querystring最好修改成:q=ucase(request.form["q"]);

    或者直接用get方式嘛:

    $.get("gethint.asp?q="+txt,function(result){
    $("span").html(result);
    });





  • 相关阅读:
    根据对象的属性排序数组
    将多维数组的元素全部取出,组成一维数组的方法
    微信公众号报错 config:invalid signature
    改造业务代码
    微信公众号调用扫一扫
    JQuery :contains选择器,可做搜索功能,搜索包含关键字的dom
    【转】超全功能测试方法集锦——(通用黑盒功能:测试新人必收攻略)
    Oracle 查看表空间的大小及使用情况sql语句
    oracle数据库 参数open_cursors和session_cached_cursor详解!
    使用MITab操作MapInfo地图文件
  • 原文地址:https://www.cnblogs.com/pfs1314/p/2245974.html
Copyright © 2020-2023  润新知