如何在JavaScript中获取文本区域的值

时间:2019-02-25 11:50:48

标签: javascript html

我正在尝试在单独的javascript文件中获取表单上特定文本区域的值。

我尝试了此stackoverflow链接中指定的代码: Get textarea by name attribute

但是我仍然获得null作为输出。

我的代码如下:

 <td>
  <textarea name="key_input" rows="4" cols="50">
    testData
  </textarea>
 </td>

在我的js中:

var key_Data = document.getElementById("key_input").value;

这是我尝试获取key_input数据的另一种方法,但是我仍然没有成功。

任何帮助将不胜感激 预先感谢。

6 个答案:

答案 0 :(得分:2)

您要搜索的ID不存在,请将名称更改为id。

id="key_input"

而且,仅创建var不会显示它。

var key_Data = document.getElementById("key_input").value;
console.log(key_Data);
<td>
  <textarea id="key_input" rows="4" cols="50">
    testData
  </textarea>
 </td>

答案 1 :(得分:1)

使用document.querySelector('[name="key_input"]')

console.log(document.querySelector('[name="key_input"]').value);
<td>
  <textarea name="key_input" rows="4" cols="50">
    testData
  </textarea>
 </td>

答案 2 :(得分:0)

您可以向id元素添加特定的textarea属性,并使用Document.querySelector()

const textareaElem = document.querySelector('#key_input');

console.log(textareaElem.value)
<textarea id="key_input" name="key_input" rows="4" cols="50">
    testData
</textarea>

答案 3 :(得分:0)

您可以使用jquery轻松完成

console.log($('#key_input').val())
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<td>
  <textarea name="key_input" rows="4" cols="50" id="key_input">
    testData
  </textarea>
 </td>

答案 4 :(得分:0)

在文本区域元素中包含属性“ id”

<td>
  <textarea name="key_input" id="key_input" rows="4" cols="50">
    testData
  </textarea>
 </td>

和您的js

var key_Data = document.getElementById("key_input").value;

答案 5 :(得分:0)

function test(){
			alert(document.getElementsByName("key_input")[0].value)
		}
<textarea name="key_input" rows="4" cols="50">
    testData
  </textarea>
  <input type="button" onclick="test()" value="get data" />

您可以将上面的代码用于textarea值的获取方式