我试图用jquery在textarea字段中设置一个值,代码如下:
$("textarea#ExampleMessage").attr("value", result.exampleMessage);
问题是,一旦这段代码执行,它不改变文本区域的文本?
然而,当执行警报($("textarea#ExampleMessage").attr("value")),新设置的值返回?
我试图用jquery在textarea字段中设置一个值,代码如下:
$("textarea#ExampleMessage").attr("value", result.exampleMessage);
问题是,一旦这段代码执行,它不改变文本区域的文本?
然而,当执行警报($("textarea#ExampleMessage").attr("value")),新设置的值返回?
当前回答
我认为这是可行的:
$("textarea#ExampleMessage").val(result.exampleMessage);
其他回答
我尝试了.val() .text() .html(),并有一些bug使用jQuery读取或设置文本区域的值…我最终使用原生js
$('#message').blur(function() {
if (this.value == '') { this.value = msg_greeting; }
});
我也有同样的问题,这个解决方案不工作,但工作的是使用html
$('#your_textarea_id').html('some_value');
只需使用这段代码,你将永远有值:
Var t = $(this); Var v = t.val() || t.html() || t.text();
所以它会检查val()并设置它的值。如果val()得到一个空字符串,NULL, NaN o.s.,它将检查html(),然后检查text()…
我认为这是可行的:
$("textarea#ExampleMessage").val(result.exampleMessage);
我也有同样的问题,所以我决定在当前的浏览器中尝试它(在这个问题之后,我们在时间上晚了一年半),并且这个(.val)是有效的
$("textarea#ExampleMessage").val(result.exampleMessage);
for
IE8 FF 3.6 FF4 Opera 11 Chrome 10