使用 jQuery 触发 oninput 事件

新手上路,请多包涵

我在文本区域上有一个 oninput 事件来检查高度并调整它的大小。现在我有时需要编辑值。我只是通过在 jQuery 中编辑 val() 来做到这一点,但这不会触发 oninput 事件。有没有办法用 jQuery 以编程方式触发 oninput 事件?

原文由 Deep Frozen 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 414
2 个回答

使用 .on('input') 。例如:

 $('textarea').on('input', function() {
  text = $('textarea').val();
  $('div').html(text);
});
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea placeholder="Type something here"></textarea>
<div></div>

原文由 Paul Chris Jones 发布,翻译遵循 CC BY-SA 4.0 许可协议

有点晚了,但为了将来参考,有 .trigger 方法。

 $("#testArea").on("input", function(e) {
  $("#outputArea").text( $(e.target).val() )
});

$("#testArea").val("This is a test");
$("#testArea").trigger("input");
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

<input id="testArea" type="text" />
<div id="outputArea"></div>

原文由 Fernando 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题