I have some TextAreas
<textarea>Default Value</textarea>
<textarea>Default Value</textarea>
The user enters some text and I want to get their NEW values in JavaScript:
$('textarea').each(function(index, item) {
alert(item.value);
});
It sounds simple, but all I get is "Default Value".
I've tried:
item.nodeValue,
item.textContent,
item.innerHTML. item.innerText,
item.value,
$(item).val() in jQuery
I'm always getting "Default Value". Though firebug even shows the new value in HtmlTextAreaElement => value. That should be item.value
, right? I feel stupid, please help me.
in textarea it's not item.value, it's innerHTML
jquery's val() works though
<input type="text" value="some text" />
<textarea id="something" name="something">some text</textarea>
you can do:
$('textarea').each(function(index, item){
console.log($(item).val());
});
Give your textareas a "name" attribute
<textarea name="name">innterHTML</textarea>
and use
item.innerHTML
as suggested, for textarea it is innerHTML, not value :)
The user enters some text and I want to get their NEW values in JavaScript:
This should do it:
$('textarea').keyup(function(){
alert(this.value);
});
To read already entered value (not when user types it), use:
$('textarea').each(function(index, item) {
alert(this.value);
});
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.