调用按键事件而不实际按下 JavaScript 中的键
invoking keypress event without actually pressing key in javascript
嗨,我希望在JavaScript中触发空格键而不按文本框中的空格键,我尝试了此代码,请帮助我解决此问题
<script language="javascript" type="text/javascript">
jQuery(document).ready(function () {
var getOldValue = jQuery("#<%=txtCompany.ClientID%>");
var e = jQuery.Event("keydown");
e.which = 32; //key code
jQuery("#<%=txtCompany.ClientID%>").trigger(e);
});
</script>
和 aspx 页是
<asp:TextBox ID="txtCompany"></asp:TextBox>
您正在客户端脚本上使用服务器端标记。这是行不通的。相反,ASP 将创建一个 id 等于 txtCompany 的 HTML 输入框。所以让我们使用它。
jQuery(document).ready(function () {
var inputBox = jQuery("#txtCompany"),
getOldValue = inputBox.val(),
e = jQuery.Event("keydown");
e.which = 32; //key code
inputBox.trigger(e);
});
我还没有像使用 jQuery.Event() 那样完成事件触发,但如果这是有效的代码,那么这应该可以解决您的问题。
您可以使用initKeyEvent和jquery
var e = jQuery.Event("keydown");
e.which = 50; //key code
$("#some_element").trigger(e);
在 vanilla JavaScript 中,它是这样工作的:
// Create the event
var evt = document.createEvent( 'KeyboardEvent' );
// Init the options
event.initKeyEvent(
"keypress", // the kind of event
true, // boolean "can it bubble?"
true, // boolean "can it be cancelled?"
null, // specifies the view context (usually window or null)
false, // boolean "Ctrl key?"
false, // boolean "Alt key?"
false, // Boolean "Shift key?"
false, // Boolean "Meta key?"
9, // the keyCode
0); // the charCode
// Dispatch the event on the element
el.dispatchEvent( evt );
相关文章:
- 如何将javascript事件从web浏览器wpf控件发送到wpf的c#代码
- 在同一个javascript事件处理程序中调用不同的函数
- Javascript事件;在新选项卡中打开”;
- 存在每个时间元素的javascript事件
- Javascript事件.锚的目标问题
- 带有参数的Javascript事件处理程序
- 如何从另一个处理程序内部取消JavaScript事件处理程序函数的执行
- firefox中的Javascript事件范围问题
- Firefox中的JavaScript事件参数
- 在动态加载的PHP表单上放置JavaScript事件
- 如何在Javascript事件上从JSNI设置GWTClass字段
- Javascript事件发射器一次处理多个事件
- 在下拉式javascript事件监听器中选择时触发事件
- 在javascript中导入xlsx文件时,如何手动强制javascript事件
- 显示触发的JavaScript事件
- 正在取消IE11中的JavaScript事件
- 页面卸载期间的JavaScript事件循环
- 存在其他参数时访问Javascript事件
- 阻止Javascript事件影响子元素
- 如何在事件处理程序中获取 javascript 事件对象