[英]Not able to append child in correct way
我有textarea,我想附加一個段落標簽,然后才能獲取textarea的值。
我正在嘗試使用Javascript create元素完成此操作
var desc = document.createElement("p");
desc.innerHTML = description;
var abc = document.getElementById("textareaCode").appendChild(desc);
alert (abc);
var comment = document.getElementById('textareaCode').value;
alert (comment);
這是錯誤消息
[對象HTMLParagraphElement]
Textarea沒有value
屬性。 您可以使用innerHTML
獲取標簽之間的內容:
var desc = document.createElement("p"); desc.innerHTML = 'blablabla'; var abc = document.getElementById("textareaCode").appendChild(desc); var comment = document.getElementById('textareaCode').innerHTML; alert (comment);
<textarea id="textareaCode"></textarea>
請注意,正如Victor Popescu所評論的那樣,即使本機不存在textarea的HTML屬性value
,setter也存在於javascript中,因此您可以使用document.getElementById('textareaCode').value = 'test';
來動態更改內容document.getElementById('textareaCode').value = 'test';
(但這不會將屬性添加到HTML,更令人驚訝的是,即使innerHTML
會為您提供正確的更新值,也不會更新DOM內容)。
關於其余問題,您可以直接操作innerHTML
將文本添加到現有innerHTML
中。 但請注意,HTML標簽將呈現為文本( <
變為<
等)。 要么添加一個HTML對象,它就不會在文本區域中顯示為文本,也不會被視為HTML:
var description = 'blablabla'; document.getElementById('textareaCode').innerHTML += '<p>' + description + '</p>'; var comment = document.getElementById('textareaCode').innerHTML; alert (comment);
<textarea id="textareaCode">existing text</textarea>
您確定這沒有按預期進行嗎? 首先,您提醒'abc'這是一個元素。 因此,警報告訴您這是一個元素。 之后,您將發出警報(注釋),這應該是您要尋找的警報。
var description ="hello world! love coding"; document.getElementById("textareaCode").value=description; var comment = document.getElementById('textareaCode').value; alert (comment)
<textarea id="textareaCode"></textarea/>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.