Õ¾ÄÚËÑË÷: ÇëÊäÈëËÑË÷¹Ø¼ü´Ê

µ±Ç°Ò³Ãæ: ¿ª·¢×ÊÁÏÊ×Ò³ ¡ú Java רÌâ ¡ú ʹÓÃJavaScriptºÍAJAX·¢³öÒì²½ÇëÇó

ʹÓÃJavaScriptºÍAJAX·¢³öÒì²½ÇëÇó

ÕªÒª: ¶àÊý Web Ó¦ÓóÌÐò¶¼Ê¹ÓÃÇëÇó/ÏìӦģÐÍ´Ó·þÎñÆ÷ÉÏ»ñµÃÍêÕûµÄ HTML Ò³Ãæ
¡¡¡¡¶àÊý Web Ó¦ÓóÌÐò¶¼Ê¹ÓÃÇëÇó/ÏìӦģÐÍ´Ó·þÎñÆ÷ÉÏ»ñµÃÍêÕûµÄ HTML Ò³Ãæ¡£³£³£Êǵã»÷Ò»¸ö°´Å¥£¬µÈ´ý·þÎñÆ÷ÏìÓ¦£¬ÔÙµã»÷ÁíÒ»¸ö°´Å¥£¬È»ºóÔٵȴý£¬ÕâÑùÒ»¸ö·´¸´µÄ¹ý³Ì¡£ÓÐÁË Ajax ºÍ XMLHttpRequest ¶ÔÏ󣬾ͿÉÒÔʹÓò»±ØÈÃÓû§µÈ´ý·þÎñÆ÷ÏìÓ¦µÄÇëÇó/ÏìӦģÐÍÁË¡£±¾ÎÄÖУ¬Brett McLaughlin ½éÉÜÁËÈçºÎ´´½¨Äܹ»ÊÊÓ¦²»Í¬ä¯ÀÀÆ÷µÄ XMLHttpRequest ʵÀý£¬½¨Á¢ºÍ·¢ËÍÇëÇ󣬲¢ÏìÓ¦·þÎñÆ÷¡£

¡¡¡¡±¾ÎÄÖУ¬Äú½«¿ªÊ¼½Ó´¥×î»ù±¾ºÍ»ù´¡ÐÔµÄÓÐ¹Ø Ajax µÄÈ«²¿¶ÔÏóºÍ±à³Ì·½·¨£ºXMLHttpRequest ¶ÔÏ󡣸öÔÏóʵ¼ÊÉϽö½öÊÇÒ»¸ö¿çÔ½ËùÓÐ Ajax Ó¦ÓóÌÐòµÄ¹«¹²Ị̈߳¬Äú¿ÉÄÜÒѾ­Ô¤Áϵ½£¬Ö»Óг¹µ×Àí½â¸Ã¶ÔÏó²ÅÄܳä·Ö·¢»Ó±à³ÌµÄDZÁ¦¡£ÊÂʵÉÏ£¬ÓÐʱÄú»á·¢ÏÖ£¬ÒªÕýÈ·µØʹÓà XMLHttpRequest£¬ÏÔÈ»²»ÄÜ Ê¹Óà XMLHttpRequest¡£Õâµ½µ×ÊÇÔõô»ØÊÂÄØ£¿

¡¡¡¡Web 2.0 һƳ

¡¡¡¡ÔÚÉîÈëÑо¿´úÂë֮ǰÊ×ÏÈ¿´¿´×î½üµÄ¹Ûµã ¡ª¡ª Ò»¶¨ÒªÊ®·ÖÇå³þ Web 2.0 Õâ¸ö¸ÅÄî¡£Ìýµ½ Web 2.0 Õâ¸ö´ÊµÄʱºò£¬Ó¦¸ÃÊ×ÏÈÎÊÒ»ÎÊ ¡°Web 1.0 ÊÇʲô£¿¡± ËäÈ»ºÜÉÙÌýÈËÌáµ½ Web 1.0£¬Êµ¼ÊÉÏËüÖ¸µÄ¾ÍÊǾßÓÐÍêÈ«²»Í¬µÄÇëÇóºÍÏìӦģÐ͵Ĵ«Í³ Web¡£±ÈÈ磬µ½ Amazon.com ÍøÕ¾Éϵã»÷Ò»¸ö°´Å¥»òÕßÊäÈëËÑË÷Ïî¡£¾Í»á¶Ô·þÎñÆ÷·¢ËÍÒ»¸öÇëÇó£¬È»ºóÏìÓ¦ÔÙ·µ»Øµ½ä¯ÀÀÆ÷¡£¸ÃÇëÇó²»½ö½öÊÇͼÊéºÍÊéÄ¿ÁÐ±í£¬¶øÊÇÁíÒ»¸öÍêÕûµÄ HTML Ò³Ãæ¡£Òò´Ëµ± Web ä¯ÀÀÆ÷ÓÃÐ嵀 HTML Ò³ÃæÖØ»æʱ£¬¿ÉÄܻῴµ½ÉÁ˸»ò¶¶¶¯¡£ÊÂʵÉÏ£¬Í¨¹ý¿´µ½µÄÿ¸öÐÂÒ³Ãæ¿ÉÒÔÇåÎúµØ¿´µ½ÇëÇóºÍÏìÓ¦¡£

¡¡¡¡Web 2.0£¨Ôںܴó³Ì¶ÈÉÏ£©Ïû³ýÁËÕâÖÖ¿´µÃ¼ûµÄÍù¸´½»»¥¡£±ÈÈç·ÃÎÊ Google Maps »ò Flickr ÕâÑùµÄÕ¾µã£¨µ½ÕâЩ֧³Ö Web 2.0 ºÍ Ajax Õ¾µãµÄÁ´½ÓÇë²ÎÔÄ ²Î¿¼×ÊÁÏ£©¡£±ÈÈçÔÚ Google Maps ÉÏ£¬Äú¿ÉÒÔÍ϶¯µØͼ£¬·Å´óºÍËõС£¬Ö»ÓкÜÉÙµÄÖØ»æ²Ù×÷¡£µ±È»ÕâÀïÈÔÈ»ÓÐÇëÇóºÍÏìÓ¦£¬Ö»²»¹ý¶¼²Øµ½ÁËÄ»ºó¡£×÷ΪÓû§£¬ÌåÑé¸ü¼ÓÊæÊÊ£¬¸Ð¾õºÜÏñ×ÀÃæÓ¦ÓóÌÐò¡£ÕâÖÖеĸÐÊܺͷ¶Ð;ÍÊǵ±ÓÐÈËÌáµ½ Web 2.0 ʱÄúËùÌå»áµ½µÄ¡£

¡¡¡¡ÐèÒª¹ØÐĵÄÊÇÈçºÎʹÕâЩеĽ»»¥³ÉΪ¿ÉÄÜ¡£ÏÔÈ»£¬ÈÔÈ»ÐèÒª·¢³öÇëÇóºÍ½ÓÊÕÏìÓ¦£¬µ«ÕýÊÇÕë¶Ôÿ´ÎÇëÇó/ÏìÓ¦½»»¥µÄ HTML ÖØ»æÔì³ÉÁË»ºÂý¡¢±¿×¾µÄ Web ½»»¥µÄ¸ÐÊÜ¡£Òò´ËºÜÇå³þ£¬ÎÒÃÇÐèÒªÒ»ÖÖ·½·¨Ê¹·¢Ë͵ÄÇëÇóºÍ½ÓÊÕµÄÏìÓ¦Ö» °üº¬ÐèÒªµÄÊý¾Ý¶ø²»ÊÇÕû¸ö HTML Ò³Ã档ΩһÐèÒª»ñµÃÕû¸öРHTML Ò³ÃæµÄʱºò¾ÍÊÇÏ£ÍûÓû§¿´µ½ ÐÂÒ³ÃæµÄʱºò¡£

¡¡¡¡µ«¶àÊý½»»¥¶¼ÊÇÔÚÒÑÓÐÒ³ÃæÉÏÔö¼Óϸ½Ú¡¢ÐÞ¸ÄÖ÷ÌåÎı¾»òÕ߸²¸ÇÔ­ÓÐÊý¾Ý¡£ÕâЩÇé¿öÏ£¬Ajax ºÍ Web 2.0 ·½·¨ÔÊÐíÔÚ²» ¸üÐÂÕû¸ö HTML Ò ³ÃæµÄÇé¿öÏ·¢ËͺͽÓÊÕÊý¾Ý¡£¶ÔÓÚÄÇЩ¾­³£ÉÏÍøµÄÈË£¬ÕâÖÖÄÜÁ¦¿ÉÒÔÈÃÄúµÄÓ¦ÓóÌÐò¸Ð¾õ¸ü¿ì¡¢ÏìÓ¦¸ü¼°Ê±£¬ÈÃËûÃDz»Ê±µØ¹â¹ËÄúµÄÍøÕ¾¡£

¡¡¡¡XMLHttpRequest ¼ò½é

¡¡¡¡ÒªÕæÕýʵÏÖÕâÖÖѤÀöµÄÆæ¼££¬±ØÐë·Ç³£ÊìϤһ¸ö JavaScript ¶ÔÏ󣬼´ XMLHttpRequest¡£Õâ¸öССµÄ¶ÔÏóʵ¼ÊÉÏÒѾ­ÔÚ¼¸ÖÖä¯ÀÀÆ÷ÖдæÔÚÒ»¶Îʱ¼äÁË£¬ËüÊDZ¾×¨À¸½ñºó¼¸¸öÔÂÖÐÒª½éÉÜµÄ Web 2.0¡¢Ajax ºÍ´ó²¿·ÖÆäËûÄÚÈݵĺËÐÄ¡£ÎªÁËÈÃÄú¿ìËٵشóÌåÁ˽âËü£¬ÏÂÃæ¸ø³ö½«ÒªÓÃÓڸöÔÏóµÄºÜÉٵļ¸¸ö ·½·¨ºÍÊôÐÔ¡£

¡¡¡¡¡¤open()£º½¨Á¢µ½·þÎñÆ÷µÄÐÂÇëÇó¡£

¡¡¡¡¡¤send()£ºÏò·þÎñÆ÷·¢ËÍÇëÇó¡£

¡¡¡¡¡¤abort()£ºÍ˳öµ±Ç°ÇëÇó¡£

¡¡¡¡¡¤readyState£ºÌṩµ±Ç° HTML µÄ¾ÍÐ÷״̬¡£

¡¡¡¡¡¤responseText£º·þÎñÆ÷·µ»ØµÄÇëÇóÏìÓ¦Îı¾¡£

¡¡¡¡Èç¹û²»Á˽âÕâЩ£¨»òÕßÆäÖеÄÈκΠһ¸ö£©£¬ÄúÒ²²»Óõ£ÐÄ£¬ºóÃ漸ƪÎÄÕÂÖÐÎÒÃǽ«½éÉÜÿ¸ö·½·¨ºÍÊôÐÔ¡£ÏÖÔÚÓ¦¸Ã Á˽âµÄÊÇ£¬Ã÷È·Óà XMLHttpRequest ×öʲô¡£Òª×¢ÒâÕâЩ·½·¨ºÍÊôÐÔ¶¼Óë·¢ËÍÇëÇó¼°´¦ÀíÏìÓ¦Óйء£ÊÂʵÉÏ£¬Èç¹û¿´µ½ XMLHttpRequest µÄËùÓз½·¨ºÍÊôÐÔ£¬¾Í»á·¢ÏÖËüÃǶ¼ Óë·Ç³£¼òµ¥µÄÇëÇó/ÏìӦģÐÍÓйء£ÏÔÈ»£¬ÎÒÃDz»»áÓöµ½ÌرðÐ嵀 GUI ¶ÔÏó»òÕß´´½¨Óû§½»»¥µÄijÖÖ³¬¼«ÉñÃصķ½·¨£¬ÎÒÃǽ«Ê¹Ó÷dz£¼òµ¥µÄÇëÇóºÍ·Ç³£¼òµ¥µÄÏìÓ¦¡£ÌýÆðÀ´ËƺõûÓжàÉÙÎüÒýÁ¦£¬µ«ÊÇÓúøöÔÏó¿ÉÒÔ³¹µ×¸Ä±äÄúµÄÓ¦ÓóÌÐò¡£

¡¡¡¡¼òµ¥µÄ new

¡¡¡¡Ê×ÏÈÐèÒª´´½¨Ò»¸öбäÁ¿²¢¸³¸øËüÒ»¸ö XMLHttpRequest ¶ÔÏóʵÀý¡£ÕâÔÚ JavaScript Öкܼòµ¥£¬Ö»Òª¶Ô¸Ã¶ÔÏóÃûʹÓà new ¹Ø¼ü×Ö¼´¿É£¬Èç Çåµ¥ 1 Ëùʾ¡£

¡¡¡¡Çåµ¥ 1. ´´½¨Ð嵀 XMLHttpRequest ¶ÔÏó

<table borderColor=#cccccc width="90%" align=center bgColor=#e3e3e3 border=1> <tr> <td>£¼script language="javascript" type="text/javascript"£¾
¡¡var request = new XMLHttpRequest();
£¼/script£¾</td></tr></table>
¡¡¡¡²»ÄÑ°É£¿¼Çס£¬JavaScript ²»ÒªÇóÖ¸¶¨±äÁ¿ÀàÐÍ£¬Òò´Ë²»ÐèÒªÏñ Çåµ¥ 2 ÄÇÑù×ö£¨ÔÚ Java ÓïÑÔÖпÉÄÜÐèÒªÕâÑù£©¡£

¡¡¡¡ Çåµ¥ 2. ´´½¨ XMLHttpRequest µÄ Java α´úÂë

<table borderColor=#cccccc width="90%" align=center bgColor=#e3e3e3 border=1> <tr> <td>XMLHttpRequest request = new XMLHttpRequest();</td></tr></table>
¡¡¡¡Òò´ËÔÚ JavaScript ÖÐÓà var ´´½¨Ò»¸ö±äÁ¿£¬¸øËüÒ»¸öÃû×Ö£¨Èç ¡°request¡±£©£¬È»ºó¸³¸øËüÒ»¸öÐ嵀 XMLHttpRequest ʵÀý¡£´Ëºó¾Í¿ÉÒÔÔÚº¯ÊýÖÐʹÓøöÔÏóÁË¡£

¡¡¡¡´íÎó´¦Àí

¡¡¡¡ÔÚʵ¼ÊÉϸ÷ÖÖÊÂÇ鶼¿ÉÄܳö´í£¬¶øÉÏÃæµÄ´úÂëûÓÐÌṩÈκδíÎó´¦Àí¡£½ÏºÃµÄ°ì·¨ÊÇ´´½¨¸Ã¶ÔÏ󣬲¢ÔÚ³öÏÖÎÊÌâʱÓÅÑŵØÍ˳ö¡£±ÈÈ磬ÈκνÏÔçµÄä¯ÀÀÆ÷£¨²»ÂÛÄúÊÇ·ñÏàÐÅ£¬ÈÔÈ»ÓÐÈËÔÚʹÓÃÀÏ°æ±¾µÄ Netscape Navigator£©¶¼²»Ö§³Ö XMLHttpRequest£¬ÄúÐèÒªÈÃÕâЩÓû§ÖªµÀÓÐЩµØ·½³öÁËÎÊÌâ¡£Çåµ¥ 3 ˵Ã÷ÈçºÎ´´½¨¸Ã¶ÔÏó£¬ÒÔ±ãÔÚ³öÏÖÎÊÌâµÄʱºò·¢³ö JavaScript ¾¯¸æ¡£

¡¡¡¡Çåµ¥ 3. ´´½¨¾ßÓдíÎó´¦ÀíÄÜÁ¦µÄ XMLHttpRequest

<table borderColor=#cccccc width="90%" align=center bgColor=#e3e3e3 border=1> <tr> <td>£¼script language="javascript" type="text/javascript"£¾
¡¡var request = false;
¡¡try {
¡¡¡¡request = new XMLHttpRequest();
¡¡} catch (failed) {
¡¡¡¡request = false;
¡¡}

¡¡if (!request)
¡¡¡¡alert("Error initializing XMLHttpRequest!");
£¼/script£¾</td></tr></table>
¡¡¡¡Ò»¶¨ÒªÀí½âÕâЩ²½Ö裺

¡¡¡¡´´½¨Ò»¸öбäÁ¿ request ²¢¸³Öµ false¡£ºóÃ潫ʹÓà false ×÷ΪÅж¨Ìõ¼þ£¬Ëü±íʾ»¹Ã»Óд´½¨ XMLHttpRequest ¶ÔÏó¡£

¡¡¡¡¡¤Ôö¼Ó try/catch ¿é£º

¡¡¡¡¡¤³¢ÊÔ´´½¨ XMLHttpRequest ¶ÔÏó¡£

¡¡¡¡¡¡¡¡1¡¢Èç¹ûʧ°Ü£¨catch (failed)£©Ôò±£Ö¤ request µÄÖµÈÔȻΪ false¡£

¡¡¡¡¡¡¡¡2¡¢¼ì²é request ÊÇ·ñÈÔΪ false£¨Èç¹ûÒ»ÇÐÕý³£¾Í²»»áÊÇ false£©¡£

¡¡¡¡¡¤Èç¹û³öÏÖÎÊÌ⣨request ÊÇ false£©ÔòʹÓà JavaScript ¾¯¸æ֪ͨÓû§³öÏÖÁËÎÊÌâ¡£

¡¡¡¡´úÂë·Ç³£¼òµ¥£¬¶Ô´ó¶àÊý JavaScript ºÍ Web ¿ª·¢ÈËÔ±À´Ëµ£¬ÕæÕýÀí½âËüÒª±È¶Áд´úÂ뻨¸ü³¤µÄʱ¼ä¡£ÏÖÔÚÒѾ­µÃµ½ÁËÒ»¶Î´øÓдíÎó¼ì²éµÄ XMLHttpRequest ¶ÔÏó´´½¨´úÂ룬»¹¿ÉÒÔ¸æËßÄúÄĶù³öÁËÎÊÌâ¡£


¡ü·µ»ØĿ¼
ǰһƪ: AJAX£ºÈçºÎ´¦ÀíÊéÇ©ºÍºóÍË°´Å¥
ºóһƪ: JavaÈçºÎ´¦ÀíARP±¨ÎĵÄÊÕ·¢