jquery ajax工作原理

2018-02-18 13:18:32 jazdbmin1639整理 ps实例讲解 ps实例讲解

jquery ajax工作原理

Q1: JQuery与ajax的关系

ajax 即“Asynchronous JavaScript and XML”(异步JavaScript和XML)是一种技术的称呼。
jquery 封装了javascript ,实现许多现成的方法供调用,方便了开发。更有利于服务器与用户的交流。是实现ajax的 精简利器。
同样的还有extjs高度封装,比较庞大,但是减少更多的工作量。

Q2: Ajax和jQuery有什么区别

AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术,通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
Jquery是一个优秀的Javascript库。兼容各种浏览器使用户能更方便地处理HTML、events、实现动画效果,并且方便地为网站提供AJAX交互。
所以两者其实不能作对比,一个是技术,一个是JS库的名称。

Q3: Jquery和ajax的具体区别是什么?

jQuery是一个javascript封装的代码库.里面是封装了我们经常用的一些函数.属于javascript的范畴.
而ajax属于集中技术的集合.一般为xmlhttprequest + javascript + xml三种技术的集合.属于技术范畴.

WW;w.jizhUbA.CoM

Q4: jquery中的ajax和正常的AJAX有什么区别

jquery是将原生的js封装了的
正常写的话 是需要写好多代码判断是什么浏览器来正确使用不同的ajax版本
jquery已经写好判断了的 用$.ajax $.get $.post 甚至JSONP都已经封装好了的 都不再需要自己写好多判断 也不用写原生js的ajax代码了的 直接调用就OK

Q5: jqueryajax异步获取数据怎么么做?有点简单例子么?

下面给你一个登录的例子,流程:ajax提交后台-访问数据库-返回数据-登录成功

1、Html代码

123

2、js代码

123456789101112131415funcationLogin(){$.ajax({type:"post",contentType:"application/json",url:"../Backstage/AdminService.asmx/GetAdminList",//请求后台方法data:JSON.stringify({Name:user,Password:psd}),success:function(result){//判断result.d的值;},error:function(response){varr=jQuery.parseJSON(response.responseText);alert("Message:"+r.Message);}})}

3、一般处理程序

123456[WebMethod]publicboolGetAdminList(stringName;stringPassword){//访问数据库//成功返回true,失败返回False;}

望采纳!

wWW.JIZHuBA.co+M

Q6: jsjqueryajax的几种用法,以及优缺点

一,最原始的方式来运用ajax var xmlHttp; function createXMLHttpRequest() { if (window.ActiveXObject) { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); }else if (window.XMLHttpRequest) { xmlHttp = new XMLHttpRequest(); } } //定义了一个ajax的入口函数,供用view层用户调用 function show_type(type_id) { // alert(id); createXMLHttpRequest(); var url = "../ajax/shop_type_status.php?id="+type_id+"&time="+Math.random(); xmlHttp.open("GET", url, true); xmlHttp.onreadystatechange = function(){ show_back();} xmlHttp.send(null); } //回调函数,将从调用的php文件中取得的数据,反还给用户 function show_back() { if (xmlHttp.readyState == 4) { if (xmlHttp.status == 200) { //document.getElementById('cat_id').value = http://cache.baiducontent.com/id; document.getElementById('type_status').innerHTML = xmlHttp.responseText; } } } 个人分析:这种方法挺好的,简单灵活,但是有一点不好,就是冗余代码比较多,不利于后期维护。二,js端封装的ajaxrequest这个东西,对于习惯了用javascript的人来说,是一个不错的选择,它是装上面所说的那种方法简单的封装了一下,做了统一的调用。感觉不错,代码挺多的就不贴出来了,大家可以到google搜ajaxrequest。//ajaxrequest.js里面有一个这个方法这个方法是供view端调用的接口,接口可以有多个,根据情况自己加function ajax_action_fun(url,fun) { var ajax=new AJAXRequest; ajax.get( url, function(obj){alert(obj.responseText);fun()} ); } //html里面调用这个接口 get_shop_son_list //是回调后执行的方法名 ajax_action_fun("../ajax/shop_ajax.php?type=1",get_shop_list); function get_shop_list(resValue){ //这里就是你要的操作 }个人分析:它弥补了第一种方法的不足,统一调用接口,可以设置回调函数,缺点如果有的话,不在ajaxrequest本身而在于javascript,举个例子吧javascript:如果我想调用ajax_action_fun这个方法我要在html里加个东西显示店jquery:用它可以尽量把js和html分开,这对于后期维护是很帮助的,会节省很多时间,例如,全站换html;$(".showshop").bind("click", {url: "../ajax/shop_ajax.php?type=1",function:get_shop_list}, ajax_action_fun); 这样就可以不用在html里面写onclick事件了三,jquery的ajax1)$.ajax({ type: "POST", url: "test.php", //调用的php文件 data: "name=zhang", success: function(msg){ ????????????//回调函数 alert( "Data Saved: " + msg ); ?????? //这里是操作 } });2)//调用test.php文件,传个参数,data是返回的数据 $.post("test.php", { name: "zhang"}, function(data){ alert("Data Loaded: " + data); }); 现在我基本上用jquery了,哈哈。 转载请注明作者:海底苍鹰

Q7: Jquery中的$ajax方法到底该怎么用

运用ajax()方法,比其它如load()、get()、post()全局性函数它更多地关注实现过程中的细节;首先要了解其参数列表:
url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址。
type:要求为String类型的参数,请求方式(post或get)默认为get。注意其他http请求方法,例如put和delete也可以使用,但仅部分浏览器支持。
timeout: 要求为Number类型的参数,设置请求超时时间(毫秒)。此设置将覆盖$.ajaxSetup()方法的全局设置。
async:要求为Boolean类型的参数,默认设置为true,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为false。注意,同步请求将锁住浏览器,用户其他操作必须等待请求完成才可以执行。
cache:要求为Boolean类型的参数,默认为true(当dataType为script时,默认为false)。设置为false将不会从浏览器缓存中加载请求信息。
data: 要求为Object或String类型的参数,发送到服务器的数据。如果已经不是字符串,将自动转换为字符串格式。get请求中将附加在url后。防止这种自动转换,可以查看processData选项。对象必须为key/value格式,例如{foo1:"bar1",foo2:"bar2"}转换为&foo1=bar1&foo2=bar2。如果是数组,JQuery将自动为不同值对应同一个名称。例如{foo:["bar1","bar2"]}转换为&foo=bar1&foo=bar2。
dataType: 要求为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:返回纯文本字符串。
beforeSend:要求为Function类型的参数,发送请求前可以修改XMLHttpRequest对象的函数,例如添加自定义HTTP头。在beforeSend中如果返回false可以取消本次ajax请求XMLHttpRequest对象是惟一的参数。
function(XMLHttpRequest){
this;//调用本次ajax请求时传递的options参数
}
complete:要求为Function类型的参数,请求完成后调用的回调函数(请求成功或失败时均调用)。参数:XMLHttpRequest对象和一个描述成功请求类型的字符串。
function(XMLHttpRequest, textStatus){
this;//调用本次ajax请求时传递的options参数
}
success:要求为Function类型的参数,请求成功后调用的回调函数,有两个参数。
(1)由服务器返回,并根据dataType参数进行处理后的数据。
(2)描述状态的字符串。
function(data, textStatus){
//data可能是xmlDoc、jsonObj、html、text等等
this;//调用本次ajax请求时传递的options参数
error:要求为Function类型的参数,请求失败时被调用的函数。该函数有3个参数,即XMLHttpRequest对象、错误信息、捕获的错误对象(可选)。
ajax事件函数如下:
function(XMLHttpRequest, textStatus, errorThrown){
//通常情况下textStatus和errorThrown只有其中一个包含信息
this;//调用本次ajax请求时传递的options参数
}
contentType:要求为String类型的参数,当发送信息至服务器时,内容编码类型默认为"application/x-www-form-urlencoded"。该默认值适合大多数应用场合。
dataFilter:要求为Function类型的参数,给Ajax返回的原始数据进行预处理的函数。提供data和type两个参数。data是Ajax返回的原始数据,type是调用jQuery.ajax时提供的dataType参数。函数返回的值将由jQuery进一步处理。
function(data, type){
//返回处理后的数据
return data;
}
global:要求为Boolean类型的参数,默认为true。表示是否触发全局ajax事件。设置为false将不会触发全局ajax事件,ajaxStart或ajaxStop可用于控制各种ajax事件。
ifModified:要求为Boolean类型的参数,默认为false。仅在服务器数据改变时获取新数据。服务器数据改变判断的依据是Last-Modified头信息。默认值是false,即忽略头信息。
jsonp:要求为String类型的参数,在一个jsonp请求中重写回调函数的名字。该值用来替代在"callback=?"这种GET或POST请求中URL参数里的"callback"部分,例如{jsonp:'onJsonPLoad'}会导致将"onJsonPLoad=?"传给服务器。
username:要求为String类型的参数,用于响应HTTP访问认证请求的用户名。
password:要求为String类型的参数,用于响应HTTP访问认证请求的密码。
processData:要求为Boolean类型的参数,默认为true。默认情况下,发送的数据将被转换为对象(从技术角度来讲并非字符串)以配合默认内容类型"application/x-www-formurlencoded"。如果要发送DOM树信息或者其他不希望转换的信息,请设置为false。
scriptCharset:要求为String类型的参数,只有当请求时dataType为"jsonp"或者"script",并且type是GET时才会用于强制修改字符集(charset)。通常在本地和远程的内容编码不同时使用。

w#wW.jIZhUbA.coM

Q8: jquery中使用ajax的几种常用写法

第一种:
$.ajax({
type: "POST",
url: "ShowProduct.aspx/GetDHList",
data: '{CategoryId:"' + CategoryId + '"}',
contentType: "application/json;charset=utf-8",
dataType: "json",
success: function (data) {
var item = eval(data.d);
var StrHtml = "";
for (var i in item) {}
}, async: false
});
第二种:
$(document).ready(function(){
$("#b01").click(function(){
htmlobj=$.ajax({url:"/jquery/test1.txt",async:false});
$("#myDiv").html(htmlobj.responseText);
});
});
第三种:
$.ajax({ url: "test.html", context: document.body, success: function(){
$(this).addClass("done");
}});

wwW.‖JIZHUBa.Com

小提示:内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。

ps实例讲解 推荐文章:
推荐不满意?点这里  ››  

ps实例讲解