[英]document.GetElementById doesn't work in any kind of browser
我正在嘗試獲取輸入(text / textarea)和document.getElementById('rtext').value
什么都不返回。 如果我設置了默認值(value =“XXX”),則返回該值,如果我編輯它,則返回。
這是一些示例:
<div class="forms">
<p><textarea id='rtext'></textarea></p>
</div>
我提到表單元素<textarea>
不是任何表單的一部分,我被迫只使用document.getElementById
。 沒有jQuery,也沒有this.form.Id.value
請幫忙。 謝謝
getElementById() (大小寫很重要)是文檔對象的成員。 要調用該函數,您需要引用該對象,然后引用該函數。 點符號,應該是:
document.getElementById()
document.getElementById() - MDC
請注意,頁面上的ID 必須是唯一的 ,並且具有相同ID的其他元素可能會導致您的問題。
好吧,它是document.getElementById()
,innit?
適合我:
<div class="forms">
<p><textarea id='rtext'></textarea></p>
</div>
<input type = "button"
onclick = "alert(document.getElementById('rtext').value);"
value = "run" />
<a href = "javascript:void(0);"
onclick = "alert(document.getElementById('rtext').value)"
>GET</a>
需要考慮的事項:
getElementById()
和getElementByID()
不是同一個函數 onkeyup
vs onkeypress
)填充后嘗試獲取值 嘗試將代碼段放在<body>
標記的末尾。 您的javascript可能在 <textarea>
元素加載之前執行。
所以:
<html>
<body>
<div class="forms">
<p><textarea id='rtext'></textarea></p>
</div>
<script type="text/javascript">
var el = document.getElementById('rtext');
alert(el);
</script>
</body>
</html>
(我遺漏了頭部和其他標簽以保持緊湊:)
我解決了這個問題:
我插入了表單標簽,我修改了
<a href="javascript"
onclick="alert(document.getElementById('rname').value)">GET</a>
同
<input type="button"
onclick="document.getElementById('rname').value=this.form.rname.value" />`
它現在工作正常。
你有沒有嘗試過:
document.getElementById('rtext').textContent
既然你已經嘗試過每個人的解決方案而你找不到錯誤,我建議你嘗試在瀏覽器中調試JavaScript。
在IE8中(我不記得7是否有它)點擊F12並調出開發人員工具欄。 在腳本選項卡上,您可以在控制台中手動測試您的javascript或進行調試。
在FireFox中使用Firebug。
在Chrome中按Ctrl + Shift + J,控制台將位於屏幕底部。 您還可以在腳本選項卡上調試腳本。
如果您在更新面板中使用Text元素,則在頁面上呈現的Id不再是rtext。僅在您使用更新面板時。 查看源代碼以驗證ID是否保留為rtext
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.