<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Swing


    天行健 君子以自強不息

    posts - 69, comments - 215, trackbacks - 0, articles - 16
       :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

    ajax學習點滴(不斷增加中)

    Posted on 2007-06-26 15:26 zht 閱讀(1009) 評論(0)  編輯  收藏 所屬分類: J2EE

          把學習ajax的一些知識記錄一下,以后不斷補充。

          用于處理XML文檔的DOM元素屬性

    屬性

    描述

    childNodes

    返回當前元素所有子元素的數(shù)組

    firstChild

    返回當前元素的第一個下級子元素

    lastChild

    返回當前元素的最后一個子元素

    nextSibling

    返回緊跟在當前元素后面的元素

    nodeValue

    指定表示元素值的讀/寫屬性

    parentNode

    返回元素的父節(jié)點

    previousSibling

    返回緊鄰當前元素之前的元素

     

    用于遍歷XML文檔的DOM元素方法

    方法

    描述

    getElementById(id)

    獲取文檔中有指定唯一ID屬性值的元素

    getElementsByTageName(name)

    返回當前元素中有指定標記名的子元素的數(shù)組

    hasChildNodes()

    返回一個布爾值,指示元素是否有子元素

    getAttribute(name)

    返回元素的屬性值,屬性由name指定


     

    屬性/方法

    描述

    Document.createElement(tagName)

    文檔對象上的createElement方法可以創(chuàng)建由tagName指定的元素。如果以字符串串div作為方法參數(shù),就會生成一個div元素

    Document.createTextNode(text)

    文檔對象的createTextNode方法會創(chuàng)建一個包含靜態(tài)文本的節(jié)點。

    <element>.appendChild(childNode)

    appendChild方法將指定的節(jié)點增加到當前元素的子節(jié)點列表(作為一個新的子節(jié)點)。例如:可以增加一個option元素,作為select元素的子節(jié)點。

    <element>.getAttribute(name)

    <element>.setAttribute(name)

    這些方法分別獲得和設置元素中name屬性的值。

    <element>.insertBefore(newNode,targetNode)

    這個方法將節(jié)點newNode作為當前元素的子節(jié)點插到targetNode元素前面。

    <element>.removeAttribute(name)

    這個方法從元素中刪除屬性name。

    <element>.replaceChild(newNode,oldNode)

    這個方法將節(jié)點oldNode替換位節(jié)點newNode。

    <element>.hasChildnodes()

    這個方法返回一個布爾值,指示元素是否有子元素。

    <element>.cloneNode(true)

    克隆當前元素,并返回新元素


          1、在XML文檔中文本本身被認為一個節(jié)點,而且必須是另外一個節(jié)點的子元素,ex)<state>shandong</state> shandong 其實是state的子元素,必須先從state獲取文本元素,再從這個文本元素得到文本內(nèi)容,
    具體代碼如下:
    var xmlDoc=xmlHttp.responseXML;
    var allStates=xmlDoc.getElementsByTagName("state");//得到一個state的數(shù)組
    var currentState=null;
    for(var i=0;i<allStates.length;i++){
       currentState=allStates[i];//得到具體的一個state元素
       alert(currentState.childNodes[0].nodeValue);//文本元素是state的第一個子元素
       //通過childNodes屬性得到state元素的文本元素,
       //nodeValue返回文本元素的內(nèi)容
    }
          
          2、關于瀏覽器的不兼容性引起的問題的解決方法
          (1)、如果使用appendChild()將tr添加到一個table中,在ie中將不會出現(xiàn)此行
                解決方法:將tr元素添加到表的<tbody>元素中
          (2)、IE中不能使用setAttribute正確的設置class屬性,
                解決方法:同時使用setAttribute("class","newclassName");和
                setAttribute  ("className","newclassName");
          (3)、IE中不能使用setAttribute設置style屬性
                解決方法:<element>.style.cssText="font-size: 12px; "

          3、用post方法發(fā)送數(shù)據(jù)的時候,需要設置xmlHttp.setrequestheader("Content-Type","application/x-www-form-urlencoded");讓服務器知道請求體中有請求參數(shù)。

          4、在請求中加入"&timeStamp="+new Date().getTime()的作用:有些瀏覽器會把多個xmlHttp請求的結果緩存在同一個url,如果對每個請求的響應不同會帶來不好的后果,加上時間戳以后就可以保證URL的唯一性,避免瀏覽器緩存結果。

          5、xmlHttp.setrequestheader("contentType","text/html;charset=uft-8");可以解決發(fā)送過程中的漢字亂碼問題。   

          6、動態(tài)刷新的實現(xiàn):核心就是setTimeout()方法通過setTimeout("startCallServer()",5000);方式隔5S后執(zhí)行startCallServe方法 注意setTimeout方法只執(zhí)行一次,所以在事件處理函數(shù)里要再次調(diào)用setTimeout方法這樣形成一個循環(huán)調(diào)用。
    主站蜘蛛池模板: 67194熟妇在线永久免费观看| 亚美影视免费在线观看 | 美女黄频a美女大全免费皮| 午夜小视频免费观看| 涩涩色中文综合亚洲| 日本高清免费不卡视频| 亚洲AV女人18毛片水真多| 免费不卡中文字幕在线| 羞羞视频免费网站含羞草| 国产成人毛片亚洲精品| 国产久爱免费精品视频| 亚洲综合日韩久久成人AV| 在线观看免费无码专区| 久久精品国产亚洲AV电影 | 免费看一级毛片在线观看精品视频| 国产一区二区免费在线| 国产福利免费视频| 久久精品国产亚洲AV麻豆~| 四虎免费影院ww4164h| 亚洲中文字幕久久无码| 免费va人成视频网站全| 手机看片国产免费永久| 亚洲电影唐人社一区二区| 成人毛片手机版免费看| 青青青视频免费观看| 久久久久亚洲av无码专区喷水| 成年女人毛片免费观看97| 丰满妇女做a级毛片免费观看| 亚洲av中文无码乱人伦在线r▽ | 久久久久亚洲AV无码专区首| 一级女人18毛片免费| 黄色免费网址大全| 亚洲国产精品久久久久久| 在线精品免费视频无码的| aa毛片免费全部播放完整| 亚洲免费观看在线视频| 亚洲国产精品专区在线观看 | 亚洲制服在线观看| 国产精品亚洲精品日韩已方 | 一级女性全黄久久生活片免费| 亚洲欧洲一区二区|