zoukankan      html  css  js  c++  java
  • AJAX--前后台交互

    注:ajax通过async参数决定是异步还是同步,false同步,true异步;

      异步执行顺序是先执行后续动作,再执行success里代码;

      同步是先执行success里代码,再执行后续代码;

    验证:同步时数据量大是否会卡顿?例如从后台搜索大量数据时,页面是否卡死?

    1、(异步)方法调用,后续代码不需要等待它的执行结果
      后台<C#>:

    using System.Web.Script.Services; 
      
    [WebMethod] 
    public static string GetStr(string str1, string str2) 

        return str1 + str2; 
    }
     
    前台<JQuery>:

    function Test(strMsg1,strMsg2) 
    {
        $.ajax({
            type: "Post",
            url: "Demo.aspx/GetStr",
            async: true,
            //方法传参的写法一定要对,与后台一致,区分大小写,不能为数组等,str1为形参的名字,str2为第二个形参的名字 
            data: "{'str1':'"+strMsg1+"','str2':'"+strMsg2+"'}",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function(data) {
                //返回的数据用data.d获取内容 
                alert(data.d);
            },
            error: function(err) {
                alert(err);
            }
        });

      //隐藏加载动画
        $("#pageloading").hide();
    }

    2、(同步)方法调用,可用于需要得到返回值是执行后续代码的前提

      后台<C#>:

    using System.Web.Script.Services; 
      
    [WebMethod] 
    public static string GetStr(string str1, string str2) 

        return str1 + str2; 
    }
     
    前台<JQuery>:

    function Test(strMsg1,strMsg2) 
    {

     var str = “”;
        $.ajax({
            type: "Post",
            url: "Demo.aspx/GetStr",
            async: false,
            //方法传参的写法一定要对,与后台一致,区分大小写,不能为数组等,str1为形参的名字,str2为第二个形参的名字 
            data: "{'str1':'"+strMsg1+"','str2':'"+strMsg2+"'}",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            success: function(data) {
                //返回的数据用data.d获取内容 
                str = data.d;
            },
            error: function(err) {
                alert(err);
            }
        });

     return str;

  • 相关阅读:
    Java基础:基本类型
    完全干净的卸载VS2013
    git本地仓库首次push到远程仓库出现错误 ! [rejected] master -> master (fetch first)
    运行VS出现warning C4996错误的解决办法
    xbmc-android的编译
    linux执行sh,出现/bin/sh^M: bad interpreter: No such file or directory
    Ubuntu配置android-vlc编译环境(2015-11-05)
    a80修改默认4k输出,官方代码锁死了
    ubuntu12.04平台下a80编译环境搭建
    编译java代码出现 错误: 需要class, interface或enum 提示
  • 原文地址:https://www.cnblogs.com/lxf1016/p/4703798.html
Copyright © 2011-2022 走看看