2015-11-09 114 views
1

我怎麼會插在頁面加載文本到文本區:插入文本到文本區域

<textarea name="orderNotes" cols="115" rows="3"></textarea> 

我曾嘗試:

var myTextarea = document.getElementsByClassName('orderNotes'); 
console.log(myTextarea); 
myTextarea.value += "text to add to the textarea"; 

HTML:

<textarea name="orderNotes" cols="115" rows="3"></textarea> 
+0

+0

屬性'name'!='className' –

+0

確保您的元素在頁面加載之前執行代碼之前先呈現 – massquote

回答

1

你試圖通過類名選擇,這需要使用class html屬性。您可以在這裏使用querySelector來獲取屬性名稱。如果你訪問由getElementsByTagName()返回數組的元素[0]

var myTextarea = document.querySelector("textarea[name='orderNotes']"); 
1

你的js代碼應該工作和class屬性添加到您的標記。

var myTextarea = document.getElementsByClassName('orderNotes')[0]; 
myTextarea.value += "text to add to the textarea"; 

<textarea name="orderNotes" class="orderNotes" cols="115" rows="3"></textarea> 

但一個更安全的方法是設定一個id屬性及與getElementById(),而不是getElementsByClassName()訪問它。

var myTextarea = document.getElementById('orderNotes'); 
myTextarea.value += "text to add to the textarea"; 

<textarea name="orderNotes" id="orderNotes" cols="115" rows="3"></textarea> 
2

你還沒有給你<textarea>任何類,所以.getElementsByClassName()不會,除非你做有用:

<textarea name="orderNotes" class="orderNotes"> 

一旦你這樣做,你必須處理其實.getElementsByClassName()返回一個列表的元素,而不僅僅是一個元素。

var myTextarea = document.getElementsByClassName('orderNotes')[0]; 

將您的變量設置爲找到的第一個變量。如果你想找出<textarea>獨特的,你可以給它一個id:

<textarea name="orderNotes" id="orderNotes"> 

然後用.getElementById()這只是一個元素(或沒有)返回:

var myTextarea = document.getElementById("orderNotes"); 
+0

不能出錯一個簡單的ID。 :) –

1

基本例如用javascript:

var textArea = document.myform.inputtext.value; 
 
textArea += "your text"; 
 
document.myform.inputtext.value = textArea;
<form name="myform"> 
 
<textarea name="inputtext"></textarea> 
 
</form>

+1

是的,你是對的@Pointy,我編輯了我的代碼。日Thnx – edonbajrami

0

document.getElementByClassName返回更多對象可以共享類的項目數組。所以你應該通過索引來訪問它(myTextarea [0] .value - 它你知道它是這個類的唯一元素),或者更好地使用id並通過document.getElementById('id')訪問它:

javascript:

var myTextarea = document.getElementsById('orderNotes'); 
consol.log(myTextarea); 
myTextarea.value += "text to add to the textarea"; 

HTML:

<textarea id="orderNotes" cols="115" rows="3"></textarea>