1. 程式人生 > >C#學習記錄(五)-------document.all使用方法

C#學習記錄(五)-------document.all使用方法

一.
 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>