2014-11-13 38 views
-3

我有一個簡單的網頁,日期和名稱輸入到表單字段和字段中,並在用戶單擊按鈕時在段落的上下文中傳輸。一些輸出爲跨度,使用InnerHTML其他輸入。獲取Javascript函數以適用於ID所有元素

某些日期/名稱必須多次出現在文檔中。我需要將我的代碼應用於具有該實際ID的所有框。我應該改爲使用課堂嗎?

實施例這個輸出日期:

// This Defines the Date the Medical Was received 
    var MEDRName = document.getElementById("MEDRName"); 
var elements = document.getElementsById("OUTMEDR"); 
for(var i = 0, len = elements.length; i < len; i++){ 
elements[i].onclick = function() { 
    var OUTMEDR = document.getElementById("OUTMEDR"); 
    var name = MEDRName.value; 

這出現在多個段落,我需要每個元素與此ID來填充。

<p> The medical was signed by <input type="text" id="MEDRNAME" /> </p> 

<p><input type="text" id="MEDRNAME" /> indicated that yadayadayada</p> 
+2

__ID必須是唯一的___。 – Mathletics

+0

如果您需要共享相似特徵的多個元素,則ID必須是唯一的,請使用不同的選擇器(類或屬性)。 – zzzzBov

+0

'.getElementsById'會拋出'undefined不是函數'。 – Mathletics

回答

1

我需要我的代碼適用於適用於所有的箱子與實際ID

ID必須是唯一的。由於應該只有一個帶有ID的元素,因此getElementsById無效,但getElementById爲。

You can see more info here.

我應該改爲使用類?

是的,你應該和它是適當的方式來做到這一點。然後你可以使用getElementsByClassName或者querySelectorAll來選擇它們。