一.
?document.all是頁面內所有元素的一個集合。例如: ? ? ?
?document.all(0)表示頁面內第一個元素
二.
document.all可以判斷瀏覽器是否是IE ?

? if(document.all){ ?
? ? alert("is ? IE!"); ?
? }
三.
也可以通過給某個元素設置id屬性(id=aaaa),然后用document.all.aaaa調用該元素
四.
案例:代碼1: ? ?
? <input ? name=aaa ? value=aaa> ?
? <input ? id=bbb ? value=bbb>? ?
? <script ? language=Jscript> ?
? ? ? alert(document.all.aaa.value) ? ? //根據name取value ?
? ? ? alert(document.all.bbb.value) ? ? //根據id取 ? value ?
? </script> ? ?
代碼2: ?
? ? ? 但是常常name可以相同(如:用checkbox取用戶的多項愛好的情況)? ?
? <input ? name=aaa ? value=a1> ?
? <input ? name=aaa ? value=a2> ?
? <input ? id=bbb ? value=bbb>? ?
? <script ? language=Jscript> ?
? ? ? alert(document.all.aaa(0).value) ? ? //顯示a1 ?
? ? ? alert(document.all.aaa(1).value) ? ? //顯示a2 ?
? ? ? alert(document.all.bbb(0).value) ? ? //這行代碼會失敗 ?
? </script> ? ?
代碼3: ?
? ? ? 理論上一個頁面中的id是互不相同的,如果出現不同tags有相同的id ?
? document.all.id ? 就會失敗,就象這樣: ?
? <input ? id=aaa ? value=a1> ?
? <input ? id=aaa ? value=a2> ?
? <script ? language=Jscript> ?
? ? ? alert(document.all.aaa.value) ? ? //顯示 ? undefined ? 而不是 ? a1或者a2 ?
? </script>? ?
代碼4: ?
?對于一個復雜的頁面(代碼很長,或者id是由
程序自動產生),或著一個 ?
? javascript初學者寫的程序,很有可能出現兩個tags有相同id的情況。 ?
?為了編程的時候不出錯,我推薦這樣的寫法: ?

? ?
? <input ? id=aaa ? value=aaa1> ?
? <input ? id=aaa ? value=aaa2> ?
? <input ? name=bbb ? value=bbb> ?
? <input ? name=bbb ? value=bbb2> ?
? <input ? id=ccc ? value=ccc> ?
? <input ? name=ddd ? value=ddd> ?
? ?
? <script ? language=Jscript> ?
? ? ? alert(document.all("aaa",0).value) ? ?
? ? ? alert(document.all("aaa",1).value) ? ?
? ? ? alert(document.all("bbb",0).value) ? ?
? ? ? alert(document.all("bbb",1).value) ? ?
? ? ? alert(document.all("ccc",0).value) ? ?
? ? ? alert(document.all("ddd",0).value) ? ?
? </script> ?

posted on 2008-07-01 21:52
藍山 閱讀(251)
評論(0) 編輯 收藏