[英]Alert with a textarea content (HTML to JavaScript)
我是使用任何語言進行編碼的新手,現在正在使用HTML,PHP和JavaScript工作(嘗試)。 我的難點是通過JavaScript文件中的警報顯示來自HTML文件的textarea中的信息。 HTML代碼是這樣的:
<head>
<title> My Form</title>
<script type= "text/javascript" src ="./JavaScript/validaLinha.js"></script>
</head>
<body>
<form name="Linhas" method="POST" action="Linhas-p.php">
<textarea name="descricaoLinha" onFocus="resetField('descricaoLinha')"> TEXT-TEXT-TEXT</textarea>
</form>
</body>
正如您在HTML代碼中看到的,我嘗試將textarea的名稱發送到名為“resetField”的JavaScript函數。 讓我們看看“resetField”的作用:
function resetField(field){
d = document.Linhas;
alert("It's entering the function."); //ANSWER = It's entering the function.
alert(field); //ANSWER = descricaoLinha
alert(d.field.value); //ANSWER = Nothing.
alert(d.getElementById(field).value); //ANSWER = Nothing.
}
我無法獲得設置為textarea值的信息! 該事件正在調用該函數(第一個警報顯示),該函數正在接收該字符串(第二個警報顯示文本區域的名稱),但是我需要的其他兩個沒有顯示。 我已經嘗試更改警報的順序,因為如果出現錯誤,那些不會繼續讀取代碼的JavaScript內容。
只是為了強調,我想要textarea中的內容。 (它的名稱正在接收)
謝謝閱讀! 抱歉我的英語。 ^^
在textaea中添加ID
<textarea id="descricaoLinha" name="descricaoLinha" onFocus="resetField('descricaoLinha')"> TEXT-TEXT-TEXT</textarea>
然后,發送ID
而不是 name
alert(d.getElementById(field).value);
此代碼找不到元素descricaoLinha,因為它搜索具有ID =“ descricaoLinha ”的元素
你的“字段”只是一個字符串,而不是一個javascript對象,當然它沒有name
屬性;
它類似於d = document.linha;
您必須通過其id
屬性獲取DOM元素:
d = document.getElementById(“Linha”);
編輯:您還需要將id屬性添加到您的字段
<textarea id="descricaoLinha" name="descricaoLinha" onFocus="resetField('descricaoLinha')"> ...
一種解決方案是:將JavaScript函數更改為
function resetField(fieldId) {
var field = document.getElementById(fieldId);
alert(field); // object
alert(field.value); // text field value
// Do whatever you want with the field object here
}
您應該打開控制台並使用console.log('output')
而不是使用alert()
進行調試; 您可以通過Ctrl + Shift + K打開Firefox控制台
你應該通過this
在你onfocus
處理程序:
onFocus="resetField(this);"
訪問它像:
alert("It's entering the function.");
alert(field.name);
alert(field.value);
這是一個演示: http : //jsfiddle.net/RbUZr/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.