我有一些文本区域
<textarea>Default Value</textarea>
<textarea>Default Value</textarea>
用户输入了一些文本,我想在 JavaScript 中获取他们的新值:
$('textarea').each(function(index, item) {
alert(item.value);
});
这听起来很简单,但我得到的只是"默认值"。
我试过:
item.nodeValue,
item.textContent,
item.innerHTML. item.innerText,
item.value,
$(item).val() in jQuery
我总是得到"默认值"。虽然Firebug甚至在HtmlTextAreaElement =>值中显示了新值。这应该是item.value
,对吧?我觉得自己很傻,请帮帮我。
在文本区域中,它不是 item.value,而是 innerHTML
jquery的val()虽然可以工作
<input type="text" value="some text" />
<textarea id="something" name="something">some text</textarea>
你可以做:
$('textarea').each(function(index, item){
console.log($(item).val());
});
为文本区域指定"name"属性
<textarea name="name">innterHTML</textarea>
和使用
item.innerHTML
正如建议的那样,对于文本区域,它是innerHTML,而不是值:)
用户输入了一些文本,我想在 JavaScript:
这应该这样做:
$('textarea').keyup(function(){
alert(this.value);
});
要读取已输入的值(而不是在用户键入时),请使用:
$('textarea').each(function(index, item) {
alert(this.value);
});