我试图用jquery在textarea字段中设置一个值,代码如下:

$("textarea#ExampleMessage").attr("value", result.exampleMessage);

问题是,一旦这段代码执行,它不改变文本区域的文本?

然而,当执行警报($("textarea#ExampleMessage").attr("value")),新设置的值返回?


当前回答

哦,来吧,男孩们!它只适用于

$('#your_textarea_id').val('some_value');

其他回答

如此:

var t = $('#taCommentSalesAdministration');
t.val('Hi');

记住,这里棘手的部分是确保您使用了正确的ID。 在使用ID之前,请确保在它前面加上#。

Textarea不存储值为

<textarea value="someString">

相反,它以以下格式存储值:

<textarea>someString</textarea>

attr("value","someString")会得到这样的结果:

<textarea value="someString">someOLDString</textarea>.

试试$(“textareaid”)。innerHTML instead。

只需要按它的类型使用textarea Id:

$("textarea#samplID").val()

您甚至可以使用下面的代码片段。

$("textarea#ExampleMessage").append(result.exampleMessage);

接受的答案对我来说是可行的,但这是在我意识到必须在页面加载完成后执行代码之后。在这种情况下,内联脚本不起作用,我猜是因为#my_form还没有加载完成。

$(document).ready(function() {
  $("#my_form textarea").val('');
});