posts - 4, comments - 3, trackbacks - 0, articles - 0

          Ajax開發記錄一: xmlhttp創建的一種方式

          Posted on 2007-02-28 15:40 青島小哥 閱讀(185) 評論(0)  編輯  收藏 所屬分類: JSPAJAX

          編寫一個js文件。如functions.js。用來存放要使用到的js函數。文件開頭如下:
          ????????????(判斷瀏覽器類型和版本,并創建相應的xmlhttp實例)

          ?1 ???? // functions.js
          ?2 ????
          ?3 ???? // Create?a?boolean?variable?to?check?for?a?valid?MS?instance.
          ?4 ???? var ?xmlhttp? = ? false ;
          ?5 ????
          ?6 ???? // Check?if?we?are?using?IE.
          ?7 ???? try ? {
          ?8 ???????? // If?the?javascript?version?is?greater?than?5.
          ?9 ????????xmlhttp? = ? new ?ActiveXObject( " Msxml2.XMLHTTP " );
          10 ????}
          ? catch ?(e)? {
          11 ???????? // If?not,?then?use?the?older?active?x?object.
          12 ???????? try ? {
          13 ???????????? // If?we?are?using?IE.
          14 ????????????xmlhttp? = ? new ?ActiveXObject( " Microsoft.XMLHTTP " );
          15 ????????}
          ? catch ?(E)? {
          16 ???????????? // Else?we?must?be?using?a?non-IE?browser.
          17 ????????????xmlhttp? = ? false ;
          18 ????????}

          19 ????}

          20 ????
          21 ???? // If?we?are?using?a?non-IE?browser,?create?a?javascript?instance?of?the?object.
          22 ???? if ?( ! xmlhttp? && ? typeof ?XMLHttpRequest? != ?'undefined')? {
          23 ????????xmlhttp? = ? new ?XMLHttpRequest();
          24 ????}

          然后在后面的函數中可以調用xmlhttp:(如下例)
          ?1 // A?variable?used?to?distinguish?whether?to?open?or?close?the?calendar.
          ?2 ???? var ?showOrHide? = ? true ;
          ?3 ????
          ?4 ???? function ?showHideCalendar()? {
          ?5 ????????
          ?6 ???????? // The?location?we?are?loading?the?page?into.
          ?7 ???????? var ?objID? = ? " calendar " ;
          ?8 ????????
          ?9 ???????? // Change?the?current?image?of?the?minus?or?plus.
          10 ???????? if ?(showOrHide? == ? true ) {
          11 ???????????? // Show?the?calendar.
          12 ????????????document.getElementById( " opencloseimg " ).src? = ? " images/mins.gif " ;
          13 ???????????? // The?page?we?are?loading.
          14 ???????????? var ?serverPage? = ? " calendar.php " ;
          15 ???????????? // Set?the?open?close?tracker?variable.
          16 ????????????showOrHide? = ? false ;
          17 ????????????
          18 ???????????? var ?obj? = ?document.getElementById(objID);
          19 ????????????xmlhttp.open( " GET " ,?serverPage);
          20 ????????????xmlhttp.onreadystatechange? = ? function ()? {
          21 ???????????????? if ?(xmlhttp.readyState? == ? 4 ? && ?xmlhttp.status? == ? 200 )? {
          22 ????????????????????obj.innerHTML? = ?xmlhttp.responseText;
          23 ????????????????}

          24 ????????????}

          25 ????????????xmlhttp.send( null );
          26 ????????}
          ? else ? {
          27 ???????????? // Hide?the?calendar.
          28 ????????????document.getElementById( " opencloseimg " ).src? = ? " images/plus.gif " ;
          29 ???????????? // The?page?we?are?loading.
          30 ???????????? var ?serverPage? = ? " blank.php " ;
          31 ????????????showOrHide? = ? true ;
          32 ????????????
          33 ????????????document.getElementById(objID).innerHTML? = ? "" ;
          34 ????????}

          35 ????????
          36 ????????
          37 ????}

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 望城县| 黔江区| 伊春市| 宜兴市| 耒阳市| 阳江市| 伊川县| 青川县| 平凉市| 昌平区| 绥德县| 定结县| 三明市| 铁力市| 西昌市| 卢湾区| 康保县| 枝江市| 呼伦贝尔市| 绥棱县| 千阳县| 林西县| 尼木县| 临沂市| 马龙县| 金川县| 靖宇县| 博白县| 色达县| 米易县| 江永县| 綦江县| 子长县| 庆云县| 郁南县| 兴化市| 应用必备| 礼泉县| 建瓯市| 襄城县| 遂川县|