事件处理中的 JavaScript 错误

标签 javascript events focus blur jquery-trigger

我正在尝试编写一个脚本,在网站的注册表单中填充数据(在 Chrome 控制台中运行代码后)。

我想要一个纯 JavaScript 函数,它的工作方式与 jquery 函数完全一样。看代码

Javascript:

var lastName = document.getElementById('lastName');
var event = document.createEvent('HTMLEvents');
var event2 = document.createEvent('HTMLEvents');
  event.initEvent('focus', true,false);
  lastName.dispatchEvent(event);
  lastName.value = 'Khan';
  event2.initEvent('blur');
  lastName.dispatchEvent(event2);

JQuery:

$('#lastName').focus();
$('#lastName').val("lastName");
$('#lastName').blur();

问题在于 JavaScript 实际上并不聚焦该字段,而 jQuery 则聚焦该字段。 因此,当我尝试提交表单时,它不会验证。

最佳答案

如果您需要该事件,您应该能够使用lastName.focus()。

https://developer.mozilla.org/en-US/docs/Web/Events/focus

关于事件处理中的 JavaScript 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47641586/

相关文章:

javascript - 隐身灯塔性能问题

javascript - 使用 Vue、Vuex 和 Firebase 进行 Twitter 身份验证

javascript - React 如何使用 typescript 处理复选框的选中和未选中事件

css - 单击时隐藏链接上的轮廓焦点

jquery - 自动显示更改而不会失去焦点

android - 选择项目后永久 NavigationView 失去焦点

javascript - 如何在javascript中将变量传递给对象内的其他函数

javascript - jQuery - 第二次点击时的不同功能

javascript - 在 D3.js 中,有没有办法绑定(bind) x 和 y 方向上的滚动事件来平移 svg?

jquery - Twitter bootstrap 和动态 dom 元素