在表单中具有textarea
标签,以获取输入文本并返回所述文本的值。
<textarea id="code" name="code"></textarea>
使用javascript获取值,但不返回任何内容。使用typeof
检查它是否为undefined
,但是typeof text
给出'string'
。这是使用.value
的正确方法吗?如何改善呢?
JavaScript:
var text = document.getElementById('code').value;
document.getElementById('submit-button').onclick = function() {
alert(text);
};
答案 0 :(得分:3)
页面加载后,您将立即获得该值,而用户没有机会键入任何内容。您想在用户单击按钮时获取值:
document.getElementById('submit-button').onclick = function() {
var text = document.getElementById('code').value;
alert(text);
};
<textarea id="code" name="code"></textarea>
<button type="button" id="submit-button">click me</button>
答案 1 :(得分:1)
您需要绑定事件并仅在用户单击按钮时获取值。
包含函数addEventListener
document.getElementById('submit-button').addEventListener('click', function() {
var text = document.getElementById('code').value;
console.log(text);
});
<textarea id="code" name="code"></textarea>
<button type="button" id="submit-button">click me</button>
答案 2 :(得分:0)
在点击事件中粘贴var text
行;它是在脚本最初运行时定义的,因此它只是一个空字符串。
document.getElementById('submit-button').onclick = function() {
var text = document.getElementById('code').value;
alert(text);
};