• AJAX请求 load方法的使用


    使用jQuery的load方法可以简单快捷的发起AJAX请求。使用load方法可以把已完成相应的文本插入到包装集所包含的任何元素中。

    load方法语法

    load(url,parameters,callback)

    参数

     

    url

    (字符串)服务器端资源地址。

    parameter

    (对象)需要传递到服务器端的参数。如果指定,就用POST方法请求;如果省略,就用GET方法请求。

    callback

    (函数)在响应数据加载到包装集后调用。该函数参数依次为文本、状态码和XHR实例。

    返回值

    包装集

    看个简单的例子

    客户端代码:

    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <title></title>
    <script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
    <script type="text/javascript">
    $().ready(function () {
      $('#selectNum').change(function () {
        var idValue = $(this).val();
        //采用POST方式调用服务
        $('#show').load('Server.aspx', { id: idValue });
        //采用GET方式调用服务
        //var url = 'Server.aspx?id=' + idValue;
        //$('#show').load(url,null , function (text,status,xhr) { alert(text) });
      })
    })
    </script>
    </head>
    <body>
    <select id="selectNum">
      <option value="0">--Select--</option>
      <option value="1">1</option>
      <option value="2">2</option>
      <option value="3">3</option>
    </select>
    <div id="show">
    </div>
    </body>
    </html>
    
    

    服务端主要代码:

    protected void Page_Load(object sender, EventArgs e)
    {
      if (!Page.IsPostBack)
      {
        if (Request["id"] != null && !string.IsNullOrEmpty(Request["id"].ToString()))
        {
          Response.Write( GetData(Request["id"].ToString()));
        }
      }
    }
    
    protected string GetData(string id)
    {
      string str = string.Empty;
      switch (id)
      { 
        case "1":
          str += "This is Number 1";
          break;
        case "2":
          str += "This is Number 2";
          break;
        case "3":
          str += "This is Number 3";
          break;
        default:
          str += "Warning Other Number!";
          break;
      }
      return str;
    }
    
    

    运行程序,结果如图:

    clip_image001

    我们也可以注销POST方式代码,来看GET方式的代码,也会得到相同的结果。

    用httpwatcher拦截请求信息,当下拉框中选择数字时,可以截取到如下请求信息。

    使用GET方法时的截图:

    clip_image003

    使用POST方法时的截图:

    clip_image005

    从两幅图中我们可以看到,当指定load方法中的第二个参数时使用的是POST请求,当不指定第二个参数时则是GET请求。

    如果服务器端返回了很多标签,我们还可以对这些标签进行进一步筛选,如:$(‘#show’).load(‘url p’),这样,就把返回内容中的p标签选择了出来

    Demo下载

  • 相关阅读:
    高性能JS载入脚本并执行
    JavaScriptDOM高级程序设计myLogger.js
    (旧文重贴)看看这两段代码有什么不同?
    (旧文重贴)原来进行Authorization:basic的时候,后面的credentials就是
    (旧文重贴)终于把ServerAppUnaviable的问题搞定了。
    (旧文重贴)花了一个小时时间,给项目组作了一个汉字到拼音的转换
    (旧文重贴)昨晚和谢晓讨论了一下多组件服务器验证的问题
    大家好!我是浪潮通软的鞠强,初来贵地,请多多指教!
    (旧文重贴)vs.net的asp.net程序无法在winserver2003上打开,终于搞定了,郁闷ing。。。
    (旧文重贴)SQLDMO好像只能在打有sp3的sql2000上用?
  • 原文地址:https://www.cnblogs.com/Johnny_Z/p/2552594.html
Copyright © 2020-2023  润新知