我想在没有输入的情况下使用jquery启动输入文本框keypress
事件
看一下这个片段:
var e = jQuery.Event("keypress");
e.keyCode = $.ui.keyCode.ENTER;
$("input").trigger(e);
这是想要的吗? 但那些代码有错误:
无法阅读属性'哪些'不受欢迎的
如何绕过该错误并使用jquery启动输入文本框keypress
事件而不键入?
$('#input').val('string');
$('#input').keypress();
相同错误
答案 0 :(得分:1)
要$.ui.keyCode
工作,您需要加入jquery-ui.js
没有jquery-ui
$(function(){
var e = $.Event("keypress");
e.which = 13;
$('input').trigger(e);
});
$('input').on('keypress',function(e){
if(e.which==13)
alert('Enter pressed automatically');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" />
使用jquery-ui
$(function(){
var e = $.Event("keypress");
e.which = $.ui.keyCode.ENTER;
$('input').trigger(e);
});
$('input').on('keypress',function(e){
if(e.which==13)
alert('Enter pressed automatically');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.css" rel="stylesheet"/>
<input type="text" />
答案 1 :(得分:1)
将此解决方案与jquery一起使用
$(document).ready(function() {
var e = $.Event("keypress", {which: 13});
$('input').trigger(e);
});
$('input').on('keypress',function(e){
console.log(e.which+' -- KeyPress event Fired');
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" />
&#13;