[問題] getElementByName.style.display[已解決]

看板Web_Design作者 (MAYBE~~)時間13年前 (2012/12/26 22:25), 編輯推噓2(206)
留言8則, 3人參與, 最新討論串1/1
javascript新手發問: 我原本是想用document.getElementById("A").style.display="block"; 可以顯示或隱藏每一個同樣的Id 後來發現這樣只會抓第一個此Id的東西 於是請教google大神 說可以用document.getElementByName 可是不管我在哪個標籤加入name="A" 始終不能控制none或block 假設原本的code是以下: <table> <tr> <td> <div id="A" > <a href="123.html"> <img src="123.jpg" alt="123" />123 </a> </div> </td> </tr> <tr> <td> <div id="B" > <a href="456.html"> <img src="456.jpg" alt="456" />456 </a> </div> </td> </tr> </table> 我想用兩張照片 一張照片顯示全部的div A 隱藏全部的div B 另一張 顯示全部的div B 隱藏全部的div A (div A 和 div B 會有很多個) 於是我寫了 <a href="javascript:showA();"><img src="AAA.jpg" /></a> <a href="javascript:showB();"><img src="BBB.jpg" /></a> function showA(){ document.getElementByName("A").style.display="block"; document.getElementByName("B").style.display="none"; } showB()則是相反 請問前輩們 在上面那個table中 我要如何加入name="A" 以便控制div的顯示或隱藏呢? 謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.249.220.140 ※ 編輯: ABOQQ 來自: 111.249.220.140 (12/26 22:34)

12/26 22:58, , 1F
因為是 document.getElementsByName 注意那個 s
12/26 22:58, 1F

12/26 22:59, , 2F
然後這函式回傳的是一個陣列
12/26 22:59, 2F

12/26 23:00, , 3F
定義上 不同Elements的ID不能重複 建議用class區分
12/26 23:00, 3F

12/26 23:03, , 4F
然後用Element的classname attribute判斷
12/26 23:03, 4F

12/27 00:06, , 5F
感謝兩位前輩指教 此問題已解決 解決方式為
12/27 00:06, 5F

12/27 00:08, , 6F
1.少了s(眼殘) 2.取得name都是A的東西 回傳是一個陣列 然後
12/27 00:08, 6F

12/27 00:09, , 7F
利用for迴圈跑此陣列 讓name為A的東西style.display=block或
12/27 00:09, 7F

12/27 00:09, , 8F
none
12/27 00:09, 8F
※ 編輯: ABOQQ 來自: 111.249.220.140 (12/27 00:11)
文章代碼(AID): #1GsmZo1n (Web_Design)