只有在文档内部的警报准备就绪后,触发器才能工作
Trigger working only after alert inside document ready
我有这个代码:
$(document).ready(function () {
active_menu('mn_tours');
$('#buscar').val(localStorage.getItem("busqueda"));
$('#btbuscar').trigger('click');
});
我想在页面加载时立即触发该按钮上的提交事件,但它似乎不起作用,但当我输入以下内容时:
$(document).ready(function () {
active_menu('mn_tours');
$('#buscar').val(localStorage.getItem("busqueda"));
alert('Something');
$('#btbuscar').trigger('click');
});
它确实有效,但我不知道如何纠正。
经过初步测试,此代码可以工作。。。
<form id="myForm" action="#" method="POST">
<input type="text" id="buscar"/>
</form>
<div id="btbuscar">
help
</div>
$(document).ready(function () {
$('#buscar').val(localStorage.getItem("busqueda"));
$("#btbuscar").bind('click', function(evt){
$("#myForm").submit()
})
$("#myForm").bind('submit', function(evt){
alert("form submitted")
})
$('#btbuscar').trigger('click');
});
如果没有看到您最初的按钮侦听器分配,我无法判断这是否正是您想要的,但只要侦听器设置正确,这个方法就会起作用。
您有一个定时问题。当javascript运行这个:
$('#btbuscar').trigger('click');
HTML元素还不存在,所以提交永远不会发生。
Alert将暂停javascript的执行。因此,当您单击"确定"时,HTML元素#btbuscar已经加载到页面上,并开始提交工作。
它不安全,但您可以使用setTimeout
$(document).ready(function () {
active_menu('mn_tours');
setTimeout(function(){
$('#buscar').val(localStorage.getItem("busqueda"));
$('#btbuscar').trigger('click');
},1000);
});
相关文章:
- jQuery触发器点击未从AJAX成功工作
- jquery触发器可以从点击开始工作,但没有准备好
- 复选框选择/取消选择触发器第一次工作,但在随后的尝试中失败
- 只有在文档内部的警报准备就绪后,触发器才能工作
- 触发器在 Jquery 幻灯片中无法正常工作
- JS切换事件触发器无法正常工作
- jQuery的触发器方法在文档就绪上无法正常工作
- jQuery触发器未按预期工作
- 如何使onEdit()触发器函数应用于多个工作表
- 悬停圆触发器不'Don’不要在多个圆圈上工作
- 为什么获胜'我的jQuery触发器工作
- 监视/测试事件处理程序上的触发器是否使用Chai工作
- 动态创建地理触发器工作灯
- Modernizr.mq不能在Safari中工作;多个事件触发器
- 触发器类与纯javascript不工作
- Jquery触发器.click()按钮有时不工作
- 触发器只工作在点击,但不加载时没有它
- jQuery选择器不工作/没有触发点击触发器
- 动态添加选项到选择框后,触发器不工作
- Jquery自定义键码触发器不工作