1

私はいくつかのTextAreaを持っています

<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 => value に新しい値を表示しますが。そうあるべきitem.valueですよね?私はばかだと思います、助けてください。

4

3 に答える 3

0

textareaでは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());
});
于 2012-06-09T12:48:00.747 に答える
0

textareasに「名前」属性を付けます

<textarea name="name">innterHTML</textarea>

と使用

item.innerHTML

提案されているように、textareaの場合はinnerHTMLであり、値ではありません:)

于 2012-06-09T12:59:46.643 に答える
0

ユーザーがテキストを入力し、JavaScriptで新しい値を取得したいのですが。

これはそれを行う必要があります:

$('textarea').keyup(function(){
   alert(this.value);
});

(ユーザーが入力したときではなく)すでに入力されている値を読み取るには、次を使用します。

$('textarea').each(function(index, item) {
    alert(this.value);
});
于 2012-06-09T13:11:26.403 に答える