javascript - 即使在手动更新 TEXTAREA 值后,如何强制 jQuery.text() 工作?

标签 javascript jquery textarea

我刚刚注意到,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/

相关文章:

javascript - jQuery 语法错误?

jquery - 颠倒姓氏和名字并删除逗号

javascript - 您可以在不使用回调的情况下从模块文件中调用主 Node.js 服务器文件中的函数吗?

javascript - Angular - 检查多个子组件是否脏

c# - 如何防止用户进行未经授权的 web 方法调用和篡改客户端验证

css - 如何垂直居中 input/textarea 元素,其中多行文本仍环绕在下方?

javascript - 文本区域计算

javascript - 在 div 中以与在 textarea 中相同的方式包装文本

javascript - 使用 Jquery 选择父 div 内的孙子

javascript - Controller 不会在没有重播的情况下返回结果。使用 fastify 平台发送