textarea不会更新

Jua*_*blo 8 jquery textarea jquery-selectors

使用jQuery,我添加了一个textarea

$('#description').append('<textarea rows="8" cols="40">test</textarea>');
Run Code Online (Sandbox Code Playgroud)

好的,我将"测试"文本更改为"测试01".但是,当我尝试

 var cadena = $('#description').text();
 alert(cadena);
Run Code Online (Sandbox Code Playgroud)

我得到"测试"而不是"测试01".为什么?

nnn*_*nnn 9

就像它在.text()doco页面上所说的那样,"要设置或获取input或textarea元素的文本值,请使用该.val()方法."

你没有说你如何改变文本,但你应该这样做:

$('#description textarea').val("test 01");        // change the text

var cadena = $('#description textarea').val();   // retrieve the current text
Run Code Online (Sandbox Code Playgroud)

注意"#description"是textarea的容器,你需要选择textarea本身来获取值.当然,如果你在容器中有多个textarea,上面的代码将不起作用,所以如果你可以为新的textarea分配一个id然后根据它选择它会更好.


gdo*_*ica 8

给出textarea一个id然后用val函数改变它的值:

$('#description').append('<textarea id="xxx" rows="8" cols="40">test</textarea>');    
$('#xxx').val('test01');

//... later on
alert($('#xxx').val());
Run Code Online (Sandbox Code Playgroud)