AJax¼¼Êõ

dzÎöAjaxÓï·¨

×ÖºÅ+ ×÷ÕߣºH5Ö®¼Ò À´Ô´£ºH5Ö®¼Ò 2017-04-11 17:02 ÎÒÒªÆÀÂÛ( )

AjaxÊÇÄ¿Ç°ºÜÆÕ±éµÄÒ»Ãż¼Êõ£¬Ò²ÊǺÜÖµµÃ̽ÌÖºÍÑо¿µÄÒ»Ãż¼Êõ¡£±¾ÎĽ«Õë¶ÔAjaxµÄ·¢Õ¹¹ý³Ì²¢½áºÏÆäÔÚ²»Í¬¿â¿ò¼ÜÖеÄʹÓ÷½Ê½À´ºÍ´ó¼Ò·ÖÏíÏÂAjaxµÄÄÇЩÐÂÀÏÓï·¨¡£

AjaxÊÇÄ¿Ç°ºÜÆÕ±éµÄÒ»Ãż¼Êõ£¬Ò²ÊǺÜÖµµÃ̽ÌÖºÍÑо¿µÄÒ»Ãż¼Êõ¡£±¾ÎĽ«Õë¶ÔAjaxµÄ·¢Õ¹¹ý³Ì²¢½áºÏÆäÔÚ²»Í¬¿â" target="_blank">¿ò¼ÜÖеÄʹÓ÷½Ê½À´ºÍ´ó¼Ò·ÖÏíÏÂAjaxµÄÄÇЩÐÂÀÏÓï·¨¡£

¡¡Ajax¼ò½é

¡¡¡¡AjaxÈ«³ÆΪ¡°Asynchronous Javascript And XML¡±£¬ ¼´¡°Òì²½JavaScriptºÍXML¡±µÄÒâ˼¡£Í¨¹ýAjaxÎÒÃÇ¿ÉÒÔÏò·þÎñÆ÷·¢ËÍÇëÇó£¬ÔÚ²»×èÈûÒ³ÃæµÄÇé¿öϽøÐÐÊý¾Ý½»»¥£¬Ò²¿ÉÒÔÀí½âΪÒì²½Êý¾Ý´«Êä¡£ÔÚAjaxµÄ°ïÖúÏÂÎÒÃǵÄÍøÒ³Ö»Ðè¾Ö²¿Ë¢Ð¼´¿É¸üÐÂÊý¾ÝµÄÏÔʾ£¬¼õÉÙÁ˲»±ØÒªµÄÊý¾ÝÁ¿£¬´ó´óÌá¸ßÁËÓû§ÌåÑ飬Ëõ¶ÌÁËÓû§µÈ´ýµÄʱ¼ä£¬Ê¹µÃwebÓ¦ÓóÌÐò¸üС¡¢¸ü¿ì£¬¸üÓѺá£

¡¡¡¡µ±È»ÒÔÉ϶¼ÊÇ˾¿Õ¼û¹ßµÄÄÚÈÝÁË£¬×÷ΪһÃûºÏ¸ñµÄ¿ª·¢ÈËÔ±»ù±¾¶¼ÔÙÊìϤ²»¹ýÁË£¬ÕâÀïֻΪÄÇЩ¸ÕÈëÃŵÄÐÂÊÖ×öÒ»¸ö¼òµ¥µÄ½éÉÜ¡£¸ü¶àµÄ¹ØÓÚAjaxµÄ¼ò½éÇëÒƲ½PHPÖÐÎÄÍø½øÐÐÁ˽⣺

¡¡Ô­ÉúAjax

¡¡¡¡»ù±¾ÉÏËùÓÐÏÖ´úµÄä¯ÀÀÆ÷¶¼Ö§³ÖÔ­ÉúAjaxµÄ¹¦ÄÜ£¬ÏÂÃæ¾ÍÀ´Ïêϸ½éÉÜÏÂÀûÓÃÔ­ÉúJSÎÒÃÇÔõÑùÀ´·¢ÆðºÍ´¦ÀíAjaxÇëÇó¡£

¡¡¡¡1.»ñÈ¡XMLHttpRequest¶ÔÏóvar xhr = new XMLHttpRequest(); // »ñÈ¡ä¯ÀÀÆ÷ÄÚÖõÄXMLHttpRequest¶ÔÏó

¡¡¡¡Èç¹ûÄãµÄÏîÄ¿Ó¦Óò»¿¼ÂǵͰ汾IE£¬ÄÇô¿ÉÒÔÖ±½ÓÓÃÉÏÃæµÄ·½·¨£¬ËùÓÐÏÖ´úä¯ÀÀÆ÷ (Firefox¡¢Chrome¡¢Safari ÒÔ¼° Opera) ¶¼ÄÚ½¨ÁË XMLHttpRequest ¶ÔÏó¡£Èç¹ûÐèÒª¼æÈÝÀÏ°æ±¾IE£¨IE5¡¢IE6£©£¬ÄÇô¿ÉÒÔʹÓà ActiveX ¶ÔÏó£º

var xhr; if (window.XMLHttpRequest) { xhr=new XMLHttpRequest(); } else if (window.ActiveXObject) { // ¼æÈÝÀÏ°æ±¾ä¯ÀÀÆ÷ xhr=new ActiveXObject("Microsoft.XMLHTTP"); }¡¡¡¡2.²ÎÊýÅäÖÃ

¡¡¡¡ÓÐÁËXMLHttpRequest¶ÔÏó£¬ÎÒÃÇ»¹ÐèÒªÅäÖÃһЩÇëÇóµÄ²ÎÊýÐÅÏ¢À´Íê³ÉÊý¾Ý½»»¥£¬ÀûÓÃopen·½·¨¼´¿É£º

var xhr; if (window.XMLHttpRequest) { xhr=new XMLHttpRequest(); } else if (window.ActiveXObject) { xhr=new ActiveXObject("Microsoft.XMLHTTP"); } if (xhr) { xhr.open('GET', '/test/', true); // ÒÔGETÇëÇóµÄ·½Ê½Ïò'/test/'·¾¶·¢ËÍÒì²½ÇëÇó }

¡¡¡¡open·½·¨ÎªÎÒÃÇ´´½¨ÁËÒ»¸öеÄhttpÇëÇó£¬ÆäÖеÚÒ»¸ö²ÎÊýΪÇëÇó·½Ê½£¬Ò»°ãΪ'GET'»ò'POST'£»µÚ¶þ¸ö²ÎÊýΪÇëÇóurl£»µÚÈý¸ö²ÎÊýΪÊÇ·ñÒì²½£¬Ä¬ÈÏΪtrue¡£

¡¡¡¡3.·¢ËÍÇëÇó

¡¡¡¡ÅäÖÃÍêÁË»ù±¾²ÎÊýÐÅÏ¢£¬ÎÒÃÇÖ±½Óµ÷ÓÃsend·½·¨·¢ËÍÇëÇ󣬴úÂëÈçÏ£º

var xhr; if (window.XMLHttpRequest) { xhr=new XMLHttpRequest(); } else if (window.ActiveXObject) { xhr=new ActiveXObject("Microsoft.XMLHTTP"); } if (xhr) { xhr.open('GET', '/test/', true); xhr.send(); // µ÷ÓÃsend·½·¨·¢ËÍÇëÇó }

¡¡¡¡ÕâÀïÐèҪעÒâµÄÊÇÈç¹ûʹÓÃGET·½·¨´«µÝ²ÎÊý£¬ÎÒÃÇ¿ÉÒÔÖ±½Ó½«²ÎÊý·ÅÔÚurlºóÃ棬±ÈÈç'/test/?name=luozh&size=12';Èç¹ûʹÓÃPOST·½·¨£¬ÄÇôÎÒÃǵIJÎÊýÐèҪдÔÚsend·½·¨ÀÈ磺

xhr.open('POST', '/test/', true); xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded"); // ½«ÇëÇóÍ·ÉèÖÃΪ±íµ¥·½Ê½Ìá½» xhr.send('name=luozh&size=12');

¡¡¡¡×îÖÕ»áÒÔForm DataµÄÐÎʽ´«µÝ£º

¡¡¡¡Èç¹û²»ÉèÖÃÇëÇóÍ·£¬Ô­ÉúAjax»áĬÈÏʹÓÃContent-TypeÊÇ'text/plain;charset=UTF-8'µÄ·½Ê½·¢ËÍÊý¾Ý,Èç¹û°´ÕÕÉÏÃæµÄ²ÎÊýÊéдÐÎʽ£¬ÎÒÃÇ×îÖÕ´«ÊäµÄÐÎʽÕâÑùµÄ£º

¡¡¡¡ÏÔÈ»Õâ²¢²»ÊÇ·þÎñÆ÷ÆÚÍûµÄÊý¾Ý¸ñʽ£¬ÎÒÃÇ¿ÉÒÔÕâÑùд£º

xhr.open('POST', '/test/', true); xhr.send(JSON.stringify({name: 'luozh', size: 12}));

¡¡¡¡×îÖÕ´«ÊäµÄ¸ñʽÈçÏ£º

¡¡¡¡ÕâÑùÎÒÃÇ¿ÉÒÔÖ±½Ó´«µÝJSON×Ö·û´®¸øºǫ́´¦Àí£¬µ±È»ºǫ́ҲÐí½øÐÐÏàÓ¦ÅäÖá£

¡¡¡¡4.¼à²â״̬

¡¡¡¡·¢ËÍÍêAjaxÇëÇóÖ®ºó£¬ÎÒÃÇÐèÒªÕë¶Ô·þÎñÆ÷·µ»ØµÄ״̬½øÐмà²â²¢½øÐÐÏàÓ¦µÄ´¦Àí£¬ÕâÀïÎÒÃÇÐèҪʹÓÃonreadystatechange·½·¨£¬´úÂëÈçÏ£º

var xhr; if (window.XMLHttpRequest) { xhr=new XMLHttpRequest(); } else if (window.ActiveXObject) { xhr=new ActiveXObject("Microsoft.XMLHTTP"); } if (xhr) { xhr.open('GET', '/test/', true); // ÒÔGETÇëÇóµÄ·½Ê½Ïò'/test/'·¾¶·¢ËÍÒì²½ÇëÇó xhr.send(); xhr.onreadystatechange = function () { // ÀûÓÃonreadystatechange¼à²â״̬ if (xhr.readyState === 4) { // readyStateΪ4±íʾÇëÇóÏìÓ¦Íê³É if (xhr.status === 200) { // statusΪ200±íʾÇëÇó³É¹¦ console.log('Ö´Ðгɹ¦'); } else { console.log('Ö´Ðгö´í'); } } } }

¡¡¡¡ÉÏÃæÎÒÃÇÀûÓÃonreadystatechange¼à²â״̬£¬²¢ÔÚÄÚ²¿ÀûÓÃreadyState»ñÈ¡µ±Ç°µÄ״̬¡£readyStateÒ»¹²ÓÐ5¸ö½×¶Î£¬µ±ÆäΪ4ʱ±íʾÏìÓ¦ÄÚÈݽâÎöÍê³É£¬¿ÉÒÔÔÚ¿Í»§¶Ëµ÷ÓÃÁË¡£µ±readyStateΪ4ʱ£¬ÎÒÃÇÓÖͨ¹ýstatusÀ´»ñȡ״̬Â룬״̬ÂëΪ200ʱִÐгɹ¦´úÂ룬·ñÔòÖ´Ðгö´í´úÂë¡£

¡¡¡¡µ±È»ÎÒÃÇ¿ÉÒÔÓÃonloadÀ´´úÌæonreadystatechangeµÈÓÚ4µÄÇé¿ö£¬ÒòΪonloadÖ»ÔÚ״̬Ϊ4µÄʱºò²Å±»µ÷Ó㬴úÂëÈçÏ£º

xhr.onload = function () { // µ÷ÓÃonload if (xhr.status === 200) { // statusΪ200±íʾÇëÇó³É¹¦ console.log('Ö´Ðгɹ¦'); } else { console.log('Ö´Ðгö´í'); } }

¡¡¡¡È»¶øÐèҪעÒâµÄÊÇ£¬IE¶ÔonloadÕâ¸öÊôÐÔµÄÖ§³Ö²¢²»ÓѺá£

¡¡¡¡³ýÁËonload»¹ÓÐ

¡¡¡¡µÈʼþ£¬ÓÐÐËȤµÄͬѧ¿ÉÒÔÇ××Ôȥʵ¼ùËüÃǵÄÓô¦¡£

¡¡¡¡ÒÔÉϱãÊÇÔ­ÉúAjaxÇëÇóÊý¾ÝµÄ³£¼û´úÂë¡£

¡¡ÆäËû¿â¿ò¼ÜÖеÄAjax¡¡¡¡1.jQueryÖеÄAjax

¡¡¡¡jQuery×÷Ϊһ¸öʹÓÃÈËÊý×î¶àµÄ¿â£¬ÆäAjaxºÜºÃµÄ·â×°ÁËÔ­ÉúAjaxµÄ´úÂ룬ÔÚ¼æÈÝÐÔºÍÒ×ÓÃÐÔ·½Ã涼×öÁ˺ܴóµÄÌá¸ß£¬ÈÃAjaxµÄµ÷ÓñäµÃ·Ç³£¼òµ¥¡£ÏÂÃæ±ãÊÇÒ»¶Î¼òµ¥µÄjQueryµÄAjax´úÂ룺

$.ajax({ method: 'GET', // 1.9.0±¾°æÇ°ÓÃ'type' url: "/test/", dataType: 'json' }) .done(function() { console.log('Ö´Ðгɹ¦'); }) .fail(function() { console.log('Ö´Ðгö´í'); })

¡¡¡¡ÓëÔ­ÉúAjax²»Í¬µÄÊÇ£¬jQueryÖÐĬÈϵÄContent-typeÊÇ'application/x-www-form-urlencoded; charset=UTF-8', ÏëÁ˽â¸ü¶àµÄjQuery AjaxµÄÐÅÏ¢¿ÉÒÔÒƲ½¹Ù·½Îĵµ£º

¡¡¡¡2.Vue.jsÖеÄAjax

¡¡

1.±¾Õ¾×ñÑ­ÐÐÒµ¹æ·¶£¬ÈκÎתÔصĸå¼þ¶¼»áÃ÷È·±ê×¢×÷ÕߺÍÀ´Ô´£»2.±¾Õ¾µÄÔ­´´ÎÄÕ£¬ÇëתÔØʱÎñ±Ø×¢Ã÷ÎÄÕÂ×÷ÕߺÍÀ´Ô´£¬²»×ðÖØÔ­´´µÄÐÐΪÎÒÃǽ«×·¾¿ÔðÈΣ»3.×÷ÕßͶ¸å¿ÉÄܻᾭÎÒÃDZ༭Ð޸Ļò²¹³ä¡£

Ïà¹ØÎÄÕÂ
ÍøÓѵãÆÀ
¾