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

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

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

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


当前回答

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

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

其他回答

使用$("textarea#ExampleMessage").html('任何你想放在这里');可能是一种好方法,因为.val()在使用数据库中的数据时可能会出现问题。

例如:

数据库字段description的值为asjkdfklasdjf sjklñadf。在这种情况下,使用.val()为textarea赋值可能是一项乏味的工作。

我也有同样的问题,所以我决定在当前的浏览器中尝试它(在这个问题之后,我们在时间上晚了一年半),并且这个(.val)是有效的

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

for

IE8 FF 3.6 FF4 Opera 11 Chrome 10

你找过瓦尔吗?

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

它为我工作.... 我建了一个脸书墙……

下面是我的代码的基础:

// SETS MY TEXT AREA TO EMPTY (NO VALUE)
$('textarea#message_wall').val('');

只需使用这段代码,你将永远有值:

Var t = $(this); Var v = t.val() || t.html() || t.text();

所以它会检查val()并设置它的值。如果val()得到一个空字符串,NULL, NaN o.s.,它将检查html(),然后检查text()…