AjaxµÄһЩÓÐÓõÄС¼¼ÇÉ

¡¶AjaxµÄһЩÓÐÓõÄС¼¼ÇÉ¡·ÕªÒª£º ÔÚʹÓÃAjax¹ý³ÌÖУ¬ÓÐʱºò×Ü»áÓöµ½Ò»Ð©ÄÑÌ⣬ä¯ÀÀÆ÷¼æÈÝ¡¢±àÂë¡¢IEϵÄÌØÊâ´¦ÀíµÈµÈ£¬Å¼¶û»á¸ãµÄÈËÍ·»èÄÔÕÍ¿ÞЦ²»µÃ£¬ÕâÀïÁÐһЩСÌùÊ¿£¬»òÐíÓÐЩÓᣠʹÓÃJavascript¿â AjaxµÄÁ÷Ðк;޴óÍþÁ¦£¡­

ÔÚʹÓÃAjax¹ý³ÌÖУ¬ÓÐʱºò×Ü»áÓöµ½Ò»Ð©ÄÑÌ⣬ä¯ÀÀÆ÷¼æÈÝ¡¢±àÂë¡¢IEϵÄÌØÊâ´¦ÀíµÈµÈ£¬Å¼¶û»á¸ãµÄÈËÍ·»èÄÔÕÍ¿ÞЦ²»µÃ£¬ÕâÀïÁÐһЩСÌùÊ¿£¬»òÐíÓÐЩÓá£

ʹÓÃJavascript¿â

AjaxµÄÁ÷Ðк;޴óÍþÁ¦£¬ÈÃÎÒÃÇÖØÐÂÉóÊÓÁËJavascriptµÄ¿ª·¢£¬Ò²Ö±½Ó´Ùʹ¸÷ÖÖ¿âµÄ³öÏÖ¡£¶ÔÓÚÆÕͨµÄ¿ª·¢Õߣ¬Ê¹ÓÃһЩÊʺÏ×Ô¼ºµÄJavascript¿â²»½ö¿ÉÒÔ±ÜÃâAjaxÓ¦ÓÃÉϵÄä¯ÀÀÆ÷¼æÈݵÈÎÊÌ⣬ҲʹÆä¿ª·¢¸ü¼ÓµÄÎȶ¨ºÍ¸ßЧ¡£ÕâÀïÁÐһЩÎÒÖªÏþµÄÇáÁ¿¼¶µÄJavascript¿â£º

  1. YUI£ºYAHOO³öÆ·£¬×é¼þ·á¸»Ç¿´ó½¡×³Îȶ¨£¬ÊÇÍŶÓЭ×÷¿ª·¢µÄÊ×Ñ¡¡£
  2. JQuery£ºÁé»î¡¢¸ßЧ£¬Æä»ùÓÚCSS3 ºÍXPathµÄÑ¡ÔñÆ÷Óï·¨ÒýÇæ·Ç³£µÄÇ¿´óºÍÍêÕû¡£
  3. Prototype£ºÊÇÒ»¸ö·Ç³£ÓÅÑŵÄJavascript¿â£¬×î¾­µäµÄιýÓÚ$·ûºÅÁË£¬DWR£¬JQuery¶¼±»ËüÎüÒýÁË¡£ÔÚËü»ù´¡ÉϳöÏÖÁËscript.aculo.us¡£
  4. Mootools£ººËÐÄÓï·¨ºÍPrototype±È½ÏÀàËÆ£¬µ«ÊÇÓùýÖ®ºó²ÅÖªµÀʲô½Ð¼òµ¥ÇáÇɺͶÌС¾«º·¡£

±àÂëÎÊÌâ

ͨ¹ýXMLHttpRequest»ñÈ¡µÄÊý¾Ý£¬Ä¬ÈϵÄ×Ö·û±àÂëÊÇUTF-8£¬Èç¹ûǰ¶ËÒ³ÃæÊÇGB2312»òÕ߯äËü±àÂ룬ÏÔʾ»ñÈ¡µÄÊý¾Ý¾ÍÊÇÂÒÂ롣ͨ¹ýXMLHTTPRequest£¬POSTµÄÊý¾ÝÒ²ÊÇUTF-8±àÂ룬Èç¹ûºǫ́ÊÇGB2312»òÕ߯äËû±àÂëÒ²»á³öÏÖÂÒÂë¡£½â¾ö·½·¨£º

  1. ͳһµ½UTF-8¡£ÕâÒ²Êǹú¼Ê»¯µÄ±ØÈ»Ç÷ÊÆ¡£
  2. Êä³öͨ¹ýXMLHttpRequest»ñÈ¡µÄÎı¾Îı¾Ê±£¬ÔÚheadersÖÐÔö¼ÓÎı¾ÉùÃ÷(Ö±½ÓHTMLÉùÃ÷ûÓÐ×÷ÓÃ)¡£È磺
    PHP:header('Content-Type:text/html;charset=GB2312');
    ASP:Response.Charset = "GB2312"
    JSP:response.setHeader("Charset","GB2312");
  3. WWW·þÎñÆ÷ÉÏÇ¿ÖÆÉùÃ÷¡£±ÈÈ磺apacheϵÄÅäÖãº
    AddDefaultCharset GB2312

    ÕâÖÖÇé¿öÖ÷ÒªÊÇÓ¦¶Ôͨ¹ýXMLHttpRequest·ÃÎʵÄÎļþÊǾ²Ì¬Îļþ£¬ÎÞ·¨ÉùÃ÷headersµÄÇé¿öÏ¡£
    ¾²Ì¬Ò³ÃæÒ»°ã¶¼»á¾­¹ýApacheµÄdeflate»ògzipѹËõ£¬´ËʱÔÚÉÏÃæÇé¿öÏÂIEÖУ¬Ê×´Îͨ¹ýXMLhttpRequest»ñµÃµÄÊý¾Ý¿ÉÒÔÕý³£ÏÔʾ£¬µ«ÔÙ»ñÈ¡Êý¾ÝÏÔʾʱ³öÏÖÂÒÂ룬Õâ´ÎÒòΪÔٴλñÈ¡µÄÊý¾ÝÀ´×Ô»º´æ£¬¿ÉÄÜÓÉÓÚä¯ÀÀÆ÷½âѹËõµÄÎÊÌâµ¼ÖÂApacheÉèÖõÄĬÈϱàÂëÉùÃ÷¶ªÊ§¡£ÓÉÓÚÕâÖÖÇé¿öÏÂÒ»°ãÊÇ´¿Îı¾£¬¿ÉÄÜ»¹ÎÞ·¨½ûÖ¹»º´æ£¬¿ÉÒÔÉèÖÃXMLhttpRequest·ÃÎʵÄÎı¾Îļþ²»Ñ¹ËõÀ´½â¾öÕâ¸öÎÊÌâ¡£
  4. ·ÇUTF-8Ò³ÃæÍ¨¹ýXMLHttpRequest»ñÈ¡µÄÎı¾Îı¾Êä³öǰ×Ö·ûתÂë³Éunicode£¬»òÕß±àÂëÖ±½ÓÊÇUTF-8£¬¿ÉÒÔÕý³£ÏÔʾ¡£ÈçʵÀýËùʾ¡£

IEÏµĻº´æÎÊÌâ

ÓÉÓÚIEµÄ»º´æ´¦Àí»úÖÆÎÊÌ⣬ÿ´Îͨ¹ýXMLHttpRequest·ÃÎʶ¯Ì¬Ò³Ãæ·µ»ØµÄ×ÜÊÇÊ״ηÃÎʵÄÄÚÈÝ£¬½â¾ö·½·¨ÓУº

  1. ¿Í»§¶Ëͨ¹ýÌí¼ÓËæ»ú×Ö·û´®½â¾ö¡£È磺
    var url = 'http://dancewithnet.com/';
    url +=  '?temp=' + new Date().getTime();
    url +=  '?temp=' + Math.random();
  2. ÔÚHTTP headers½ûÖ¹»º´æ¡£È磺
    HTTP:




    PHP£º
    header("Expires: Thu, 01 Jan 1970 00:00:01 GMT");
    header("Cache-Control: no-cache, must-revalidate");
    header("Pragma: no-cache");
    ASP£º
    Response.expires=0
    Response.addHeader("pragma","no-cache")
    Response.addHeader("Cache-Control","no-cache, must-revalidate")
    JSP£º
    response.addHeader("Cache-Control", "no-cache");
    response.addHeader("Expires", "Thu, 01 Jan 1970 00:00:01 GMT");
  3. ÔÚXMLHttpRequest·¢ËÍÇëÇó֮ǰ¼ÓÉÏ£º
    XMLHttpRequest.setRequestHeader("If-Modified-Since","0");
    XMLHttpRequest.send(null);

IEϵÄreponseXMLÎÊÌâ

ʹÓÃresponseXMLʱ£¬IEÏÂÖ»ÄܽÓÊÜ.xmlΪºó׺µÄXMLÎļþ£¬Èç¹û²»ÄÜÒÔ.xmlÎļþΪ½áβµÄ£¬ÔòÐèÒªÈçÏ´¦Àí£º

  1. ÔÚ·þÎñÆ÷¶ËÉùÃ÷ÊÇxmlÎļþÀàÐÍ¡£È磺
    PHP:header("Content-Type:text/xml;charset=utf-8");
    ASP:Response.ContentType = "text/xml";
    JSP:response.setHeader("ContentType","text/xml");
  2. ÀûÓÃresponseText»ñÈ¡£¬È»ºó·â×°³ÉXML¡£
  3. ÔÚAJAXÓ¦ÓÃÉÏ£¬JSONºÍJsonMLÊÇXML·Ç³£ºÃµÄÌæ´úÆ·¡£
ÄãµÄλÖ㺵çÄÔ¹ÊÕÏÍø >> ÍøÕ¾ÖÆ×÷ >> Javascript½Ì³Ì >> AjaxµÄһЩÓÐÓõÄС¼¼ÇÉ