我刚刚注意到,jQuery text(...)
方法仅设置 TEXTAREA
的内容,如果尚未手动更新。例如(也在 jsFiddle 上):
$('#myButton').click(function() {
$('#myText').text(Date.now);
});
<textarea id="myText"></textarea>
<button id="myButton">Go!</button>
<script src="//code.jquery.com/jquery-2.1.0.js"></script>
现在,当我单击Go!时, TEXTAREA
的内容使用当前时间戳进行更新。我也可以做多次。在职的。但是,如果我手动更改文本(例如通过删除或添加字符),它就会停止工作。
我还尝试了 val(...)
方法。无论文本字段上的手动更改如何,它都会按预期工作。
如何获取jQuery.text(...)
手动更改后工作吗?
最佳答案
您的问题似乎表明您知道可以使用 val
但选择不这样做。所以我尝试了各种选项,但我认为你不能可靠地使用 text
设置文本区域。
因此,设置 textarea
值的正确方法是使用 val
,使用val
。 :-) 如果您这样做,无论 textarea
是否由用户编辑,它都会起作用:
$('#myButton').click(function() {
$('#myText').val(Date.now);
});
<textarea id="myText"></textarea>
<button id="myButton">Go!</button>
<script src="//code.jquery.com/jquery-2.1.0.js"></script>
关于javascript - 即使在手动更新 TEXTAREA 值后,如何强制 jQuery.text() 工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47700848/