ajax同步管理详细解释_jquery_脚本之家,方法参数
分类:pc28.am

一、前言

俗说好记性比不上个烂笔头,上边是jquery中的ajax方法参数详明,这里收拾了大器晚成部分供大家参照他事他说加以侦察。

何以须求动用同步,因为不时大家给一个交给开关注册提交表单数据的时候,在付给动作以前会实行生龙活虎二种的异步ajax供给操作,可是页面js代码会按梯次从上往上边推行,若是你在此进程中张开了异步操作,那么获取不到当下异步操作再次来到的结果,js会继续施行下一条语句,所以大家供给同步操作央求获取后台重返数据结果后,推断结果是还是不是适合再履行js下一条语句。

 1.url:

二、$.ajax(卡塔尔(英语:State of Qatar)参数解释

渴求为String类型的参数,(默以为当前页地址)发送央浼的地方。

url: 发送乞求的地点。

2.type:

type: 央求格局默认为get。

渴求为String类型的参数,要求方式(post或get)默以为get。注意其余http要求方法,比如put和delete也能够使用,但唯有的浏览器扶持。

timeout: 必要为Number类型的参数,设置哀告超时时间。

3.timeout:

async:默许设置为true,全数诉求均为异步诉求。同步央求,设置为false。注意,同步央浼将锁住浏览器,顾客其他操作必得等待央求完毕才方可实行。-----那一个是同步操作最入眼的装置因素

务求为Number类型的参数,设置央求超时时间(皮秒)。此设置将覆盖$.ajaxSetup(卡塔尔国方法的全局设置。

cache:默以为true,尽管浏览器有缓存就能够收获浏览器的缓存数据,设置false怎么不会拿走缓存数据

4.async:

data: 须要为Object或String类型的参数,发送到服务器的数码。借使已经不是字符串,将自行调换为字符串格

渴求为Boolean类型的参数,私下认可设置为true,全数央求均为异步乞求。假若需求发送同步诉求,请将此选项设置为false。注意,同步央浼将锁住浏览器,客户其余操作必需等待央浼落成才得以实施。

式。get央求中校附加在url后。幸免这种活动转变,能够查阅processData选项。对象必需为key/value格

5.cache:

式,举例{foo1:"bar1",foo2:"bar2"}调换为&foo1=bar1&foo2=bar2。要是是数组,JQuery将自行为差异

务求为Boolean类型的参数,默以为true(当dataType为script时,默感觉false),设置为false将不会从浏览器缓存中加载央求新闻。

值对应同一个称谓。比方{foo:["bar1","bar2"]}转换为&foo=bar1&foo=bar2。

6.data:

dataType: 必要为String类型的参数,预期服务器重临的数据类型。假如不点名,JQuery将活动依据http包mime

必要为Object或String类型的参数,发送到服务器的数码。假使已经不是字符串,将电动调换为字符串格式。get央求中将附加在url后。制止这种自动调换,可以查阅  processData选项。对象必得为key/value格式,例如{foo1:"bar1",foo2:"bar2"}转变为&foo1=bar1&foo2=bar2。假如是数组,JQuery将电动为不一样值对应同三个名号。举个例子{foo:["bar1","bar2"]}转换为&foo=bar1&foo=bar2。

消息重临responseXML或responseText,并作为回调函数参数字传送递。

7.dataType:

xml:返回XML文档,可用JQuery处理。

渴求为String类型的参数,预期服务器再次来到的数据类型。假若不钦定,JQuery将电动依照http包mime信息重返responseXML或responseText,并作为回调函数参数字传送递。可用的门类如下:
xml:返回XML文档,可用JQuery处理。
html:再次回到纯文本HTML音信;包涵的script标签会在插入DOM时实践。
script:重返纯文本JavaScript代码。不会自动缓存结果。除非设置了cache参数。注意在中远间隔必要时(不在同三个域下),全部post央求都将转为get央求。
json:返回JSON数据。
jsonp:JSONP格式。使用SONP方式调用函数时,比如myurl?callback=?,JQuery将自行替换后四个“?”为不易的函数名,以实行回调函数。
text:重回纯文本字符串。

html:重返纯文本HTML消息;包括的script标签会在插入DOM时施行。

8.beforeSend:

script:重临纯文本JavaScript代码。不会活动缓存结果。除非设置了cache参数。注目的在于长间隔央求时,全数post央求都将转为get哀告。

渴求为Function类型的参数,发送诉求前能够矫正XMLHttpRequest对象的函数,譬喻增多自定义HTTP头。在beforeSend中生龙活虎经回到false能够撤消此番ajax诉求。XMLHttpRequest对象是并世无双的参数。
            function(XMLHttpRequest){
               this;   //调用此次ajax恳求时传递的options参数
            }

json:返回JSON数据。

9.complete:

jsonp:JSONP格式。使用SONP情势调用函数时,比方myurl?callback=?,JQuery将自动替换后叁个“?”为正确的函数名,以实践回调函数。

务求为Function类型的参数,央求完结后调用的回调函数(供给成功或退步时均调用)。参数:XMLHttpRequest对象和一个陈诉成功央浼类型的字符串。
          function(XMLHttpRequest, textStatus){
             this;    //调用这一次ajax央求时传递的options参数
          }

text:再次来到纯文本字符串。

10.success:必要为Function类型的参数,诉求成功后调用的回调函数,有八个参数。

beforeSend:要求为Function类型的参数,发送恳求前可以改革XMLHttpRequest对象的函数,比如增添自定义HTTP头。在beforeSend中只要回去false能够裁撤本次ajax央浼。XMLHttpRequest对象是举世无双的参数。

         (1卡塔尔国由服务器再次来到,并基于dataType参数实行拍卖后的数据。
         (2卡塔尔国描述状态的字符串。
         function(data, textStatus){
            //data可能是xmlDoc、jsonObj、html、text等等
            this;  //调用本次ajax央浼时传递的options参数
         }

function{ this; //调用这次ajax诉求时传递的options参数 }

11.error:

complete:须求为Function类型的参数,哀告完毕后调用的回调函数。 参数:XMLHttpRequest对象和三个描述成功央浼类型的字符串。

供给为Function类型的参数,诉求失败时被调用的函数。该函数有3个参数,即XMLHttpRequest对象、错误新闻、捕获的怪诞对象(可选卡塔尔。ajax事件函数如下:
       function(XMLHttpRequest, textStatus, errorThrown){
          //平常状态下textStatus和errorThrown唯有中间一个暗含音信
          this;   //调用此次ajax须求时传递的options参数
       }

function(XMLHttpRequest, textStatus卡塔尔(قطر‎{ this; //调用此番ajax哀告时传递的options参数 }

12.contentType:

success:务求为Function类型的参数,央浼成功后调用的回调函数,有四个参数。

必要为String类型的参数,当发送音讯至服务器时,内容编码类型默以为"application/x-www-form-urlencoded"。该私下认可值符合大非常多运用途合。

由服务器再次回到,并基于dataType参数举行管理后的数码。

13.dataFilter:

//data可能是xmlDoc、jsonObj、html、text等等this;

务求为Function类型的参数,给Ajax重返的原本数据开展预管理的函数。提供data和type八个参数。data是Ajax再次回到的原来数据,type是调用jQuery.ajax时提供的dataType参数。函数重回的值将由jQuery进一层管理。
            function(data, type){
                //重回管理后的数量
                return data;
            }

//调用此次ajax要求时传递的options参数

14.dataFilter:

error:供给为Function类型的参数,央浼失利时被调用的函数。该函数有3个参数,即XMLHttpRequest对象、错误消息、捕获的失实对象。

渴求为Function类型的参数,给Ajax重临的庐山面目目数据开展预管理的函数。提供data和type三个参数。data是Ajax再次来到的原本数据,type是调用jQuery.ajax时提供的dataType参数。函数再次来到的值将由jQuery进一层管理。
            function(data, type){
                //再次回到管理后的数据
                return data;
            }

ajax事件函数如下:

15.global:

function(XMLHttpRequest, textStatus, errorThrown卡塔尔(قطر‎{ //常常情状下textStatus和errorThrown唯有内部二个富含新闻 this; //调用本次ajax要求时传递的options参数 }

务求为Boolean类型的参数,默以为true。表示是或不是接触全局ajax事件。设置为false将不会触发全局ajax事件,ajaxStart或ajaxStop可用来调节各类ajax事件。

contentType:务求为String类型的参数,当发送新闻至服务器时,内容编码类型默以为"application/x-www-form-urlencoded"。该暗中同意值符合大许多选择场馆。

16.ifModified:

dataFilter:务求为Function类型的参数,给Ajax再次来到的原有数据举办预处理的函数。 提供data和type八个参数。data是Ajax再次来到的原始数据,type是调用jQuery.ajax时提供的 dataType参数。函数再次回到的值将由jQuery进一层管理。

务求为Boolean类型的参数,默以为false。仅在服务器数据变动时收获新数据。服务器数据变动决断的依附是Last-Modified头新闻。默许值是false,即忽视头消息。

function{ //重回管理后的数额 return data; }

17.jsonp:

global:务求为Boolean类型的参数,默许为true。表示是还是不是接触全局ajax事件。设置为false将不会接触全局 ajax事件,ajaxStart或ajaxStop可用以调节种种ajax事件。

渴求为String类型的参数,在一个jsonp央求中重写回调函数的名字。该值用来代替在"callback=?"这种GET或POST央浼中U索罗德L参数里的"callback"部分,举个例子{jsonp:'onJsonPLoad'}会形成将"onJsonPLoad=?"传给服务器。

ifModified:渴求为Boolean类型的参数,默以为false。仅在服务器数据变动时获得新数据。服务器数据变动判别的依照是Last-Modified头音讯。暗中认可值是false,即忽视头音讯。

18.username:

jsonp:务求为String类型的参数,在多个jsonp央浼中重写回调函数的名字。 该值用来替代在"callback=?"这种GET或POST央求中UEscortL参数里的"callback"部分,举例{jsonp:'onJsonPLoad'}会变成将"onJsonPLoad=?"传给服务器。

渴求为String类型的参数,用于响应HTTP访谈认证诉求的客商名。

username:务求为String类型的参数,用于响应HTTP访谈认证诉求的客户名。

19.password:

password:务求为String类型的参数,用于响应HTTP访谈认证伏乞的密码。

要求为String类型的参数,用于响应HTTP访谈认证乞求的密码。

processData:务求为Boolean类型的参数,默以为true。暗中认可境况下,发送的数据将被改换为对象以至极暗中认可内容类型"application/x-www-form-urlencoded"。假使要发送DOM树信息或许其余不希望调换的新闻,请设置为false。

20.processData:

scriptCharset:渴求为String类型的参数,唯有当呼吁时dataType为"jsonp"大概"script",何况type是GET时才会用来强制改革字符集。平常在本地和长途的剧情编码区别有时候接纳。

渴求为Boolean类型的参数,默以为true。暗许情况下,发送的数码将被撤换为对象(从本事角度来说实际不是字符串)以格外私下认可内容类型"application/x-www-form-urlencoded"。如若要发送DOM树新闻也许别的不愿意转变的新闻,请设置为false。

三、$.getJson(卡塔尔同步设置

21.scriptCharset:

$.getJson(卡塔尔本人是异步操作的办法,须要通过设置技术够一齐

必要为String类型的参数,独有当倡议时dataType为"jsonp"可能"script",而且type是GET时才会用来强制修正字符集(charset卡塔尔(英语:State of Qatar)。平日在本地和远程的内容编码差异一时间使用。

在实行早先加$.ajaxSettings.async = false; 实施你的代码之后立时回复为$.ajaxSettings.async = true; 不然影响别之处的急需异步施行的代码。

案例代码:

四、具体操作例子

$(function(){
  $('#send').click(function(){
     $.ajax({
       type: "GET",
       url: "test.json",
       data: {username:$("#username").val(), content:$("#content").val()},
       dataType: "json",
       success: function(data){
             $('#resText').empty();  //清空resText里面的所有内容
             var html = ''; 
             $.each(data, function(commentIndex, comment){
                html  = '<div class="comment"><h6>'   comment['username']
                       ':</h6><p class="para"'   comment['content']
                       '</p></div>';
             });
             $('#resText').html(html);
           }
     });
  });
});
 //点击新增按钮,新增数据 $.click { var bool = true;//存储异步请求结果是否通过 //1、验证优惠额度正确性 var index = parseInt.val { //满减 var reg = /^[0-9] ,[0-9] $/; if (!reg.test.val { $.messager.alert('错误提示', '满减优惠额度格式不正确', 'error'); return false; } } else if  { var reg = /^0.[0-9] $/; if (!reg.test.val { $.messager.alert('错误提示', '折扣优惠额度格式不正确', 'error'); return false; } } else if  { var reg = /^[1-9] [0-9]$/; if (!reg.test.val { $.messager.alert('错误提示', '指定金额优惠额度格式不正确', 'error'); return false; } } //2、验证优惠范围正确性 var index = parseInt.val { //选择全站 } else if  { //判断商品ID $.ajax({ type: "post", url: "Gift_Add.aspx", cache: false, async: false, //设置同步了~~~~~~~~~ dataType: "json", data: { "method": "isExistInfoTitle", "intInfoID": $ }, success: function  { if (data.result == "false") { $.messager.alert('错误提示', '商品ID不存在', 'error'); bool = false; $.css; } else { $.css({ "display": "none" }); bool = true; } } }); } }); }if  {//如果bool为false才返回,true继续往下走 return false; //不能在异步方法里面return,不起作用 } var validate = $.form; if  {//表单验证不通过 return false; } //当上面全部验证通过了执行新增操作 $.messager.confirm('温馨提示', '是否确认添加', function  { $.post("Gift_Add.aspx?method=addGift", $, function  { $.messager.alert('成功提示', '添加成功', 'info'); }); } }); });

$.ajax验证登陆:

2、$.getJson()

 <script type="text/javascript" language="javascript">
    function IbtnEnter_onclick() {
      checklogin();
      return false;
    }
    function checklogin() {
      if ($("#TxtUserName").val() == "") {
        alert("用户名不能为空!");
        $("#TxtUserName").focus();
        return false;
      }
      if ($("#TxtPassword").val() == "") {
        alert("密码不能为空!");
        $("#TxtPassword").focus();
        return false;
      }
      $.ajax({
        type: "POST",
        url: "ajax/Handler.ashx?M="   Math.random(),
        data: "username="   $("#TxtUserName").val().toString()   "&pwd="   $("#TxtPassword").val().toString(),
        success: function (data) {
          if (data == "1") {
            location.href = "index.aspx";
            return true;
          }
          else {
            alert("请确认您输入的用户名或密码输入是否正确!");
            $("#TxtUserName").val("");
            $("#TxtPassword").val("");
            $("#TxtUserName").focus();
            return false;
          }
        }
      })
    }
  </script>
 //点击新增按钮,新增数据 $.click { var bool = true;//存储异步请求结果是否通过 //1、验证优惠额度正确性 var index = parseInt.val { //满减 var reg = /^[0-9] ,[0-9] $/; if (!reg.test.val { $.messager.alert('错误提示', '满减优惠额度格式不正确', 'error'); return false; } } else if  { var reg = /^0.[0-9] $/; if (!reg.test.val { $.messager.alert('错误提示', '折扣优惠额度格式不正确', 'error'); return false; } } else if  { var reg = /^[1-9] [0-9]$/; if (!reg.test.val { $.messager.alert('错误提示', '指定金额优惠额度格式不正确', 'error'); return false; } } //2、验证优惠范围正确性 var index = parseInt.val { //选择全站 } else if  { //判断商品ID $.ajaxSettings.async = false; //设置getJson同步 $.getJSON("Gift_Add.aspx", { "method": "isExistInfoTitle", "intInfoID": $ }, function  { if (data.result == "false") { $.messager.alert('错误提示', '商品ID不存在', 'error'); bool = false; $.css; } else { $.css({ "display": "none" }); bool = true; } }); $.ajaxSettings.async = true;//设置getJson异步 } }); } if  {//如果bool为false才返回,true继续往下走 return false; //不能在异步方法里面return,不起作用 } var validate = $.form; if  {//表单验证不通过 return false; } //当上面全部验证通过了执行新增操作 $.messager.confirm('温馨提示', '是否确认添加', function  { $.post("Gift_Add.aspx?method=addGift", $, function  { $.messager.alert('成功提示', '添加成功', 'info'); }); } }); });

诚如管理程序

$.ajax 是思想的 get、post 方法的 AJAX 达成$.getJSON 是 jsonp 类AJAX 达成之所以称之为 类AJAX 是因为尽管她被封装在 jq 的 ajax 类中,但实质上是经过 script 节点贯彻的

<%@ WebHandler Language="C#" Class="Handler" %>
using System;
using System.Web;
using System.Data.SqlClient;
using System.Web.SessionState;//继承接口IReadOnlySessionState需要引入的命名空间
public class Handler : IHttpHandler, IRequiresSessionState
{
  SqlHelper helper = new SqlHelper();
  public void ProcessRequest(HttpContext context)
  {
    context.Response.ContentType = "text/plain";
    string username = context.Request.Params["username"].ToString().Trim();
    string pwd = context.Request.Params["pwd"].ToString().Trim();
    if (username != "" && pwd != "")
    {
      string sql = @"SELECT * FROM [USER] WHERE USERNAME='" username "' AND PASSWORD='" pwd "' ";
      if (!helper.Exists(sql))
      {
        context.Response.Write("0");
      }
      else
      {
        SqlDataReader reader = helper.ExecuteReader(sql);
        while (reader.Read())
        {
          context.Response.Write("1");
          context.Session["username"] = username.ToString().Trim();
          context.Session["pwd"] = pwd.ToString().Trim();
        }
      }
    }
  }
  public bool IsReusable
  {
    get
    {
      return false;
    }
  }
}

在使用上 $.getJSON 和 $.ajax 的分歧在于:

以上内容是笔者给我们大饱眼福的Jquery中$.ajax(卡塔尔方法参数详明,希望我们赏识。

出殡时,$.getJSON 会传递一个回调函数名吸收接纳是,这几个回调函数会被调用$.getJSON 的劳动器端必需将盛传的回调函数名附加在json数码早前正因为如此,这么些再次回到的串就早就不是 json 了所以有 dataType:"json" 属性的 $.ajax 会因json解析错误而步向 error 分支

您或者感兴趣的稿子:

  • JQuery中$.ajax(卡塔尔方法参数详整
  • jQuery中$.ajax(卡塔尔国和$.getJson(卡塔尔同步管理精解
  • jQuery中的$.ajax(卡塔尔(قطر‎方法运用
  • JQuery中$.ajax(卡塔尔方法参数详细解释及运用
  • Jquery中$.get(卡塔尔国,$.post(卡塔尔国,$.ajax(卡塔尔(英语:State of Qatar),$.getJSON(卡塔尔(قطر‎的用法总括
  • jquery自定义相像$.ajax(卡塔尔的主意实现代码
  • JQuery的ajax的用法在asp中采纳$.ajax(卡塔尔(قطر‎完结
  • jquery $.ajax(卡塔尔(قطر‎取xml数据的小标题解决格局
  • jquery中拿走$.ajax(卡塔尔(英语:State of Qatar)事件再次来到的值并加上事件的点子
  • jQuery中$.ajax(卡塔尔(قطر‎方法参数剖析

本文由pc28.am发布于pc28.am,转载请注明出处:ajax同步管理详细解释_jquery_脚本之家,方法参数

上一篇:事件处理详解 下一篇:没有了
猜你喜欢
热门排行
精彩图文