javascript - 当用户输入 HTML <input/> 时,数据存储在哪里?

标签 javascript html jquery jquery-ui jquery-events

我正在编写一个 jQuery 脚本,它需要与现有的不可更改的插件一起使用。此插件监听输入到 <input type='text'> 中的文本然后处理结果。我无法改变这一点。我的脚本通过 $('#display).val(newValue); 设置输入文本作为 jQueryUI Slider 被拖动。我需要插件将此值识别为由用户键入,以便它处理 newValue随着 slider 被拖动。

任何人都可以指出我的写作方向吗?

最佳答案

您可能需要“触发”keyup(或 keypressed?)事件,以便触发事件处理程序。

这是一种(有点脏)的方法:

var e = jQuery.Event("keyup");
e.which = 50; // # Some key code value
$("#display").trigger(e);

请注意,插件可能正在寻找特定的键,我可能猜错了事件。

更复杂的方法是追踪插件的事件处理程序,然后直接调用它。 FireBug 可以通过逐步调试帮助您找到它。否则,您可以使用 jquery 开始检查输入的事件处理程序。

var events = $('#display').data("events");
jQuery.each(events, function(key, handlerObj) {
  console.log(handlerObj); // alert(handlerObj);
});

找到相关处理程序后,您可以直接调用它。

HTH

关于javascript - 当用户输入 HTML &lt;input/> 时,数据存储在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10526816/

相关文章:

javascript - 将 Canvas 中的图像保存到本地存储

html - 完整的背景图像变得可点击

javascript - 一个类的QuerySelectorAll不包括样式属性?

javascript - TamperMonkey - 不同子域上的脚本之间的消息

javascript - Reactjs - 未捕获的类型错误 : Cannot read property 'map' of undefined

javascript - Sequelize如何添加自定义排序功能?

javascript - React Native - 使用异步数据填充 ListView

javascript - 如何修复此 $scope 以在 HTML 中显示

javascript - SlickNav 菜单覆盖 Logo ,使链接无法点击

javascript - 如何仅在文档完成加载后加载 jQuery 函数