等待jquery第一个更改事件完成
wait for jquery first change event to complete?
我有两个选择框要更改。第二个依赖于第一个。这就是我目前所拥有的:
$.post('functions.php', {f: 'getdata', param1: parmvalue}, function(data) {
if (data.platform_seen) {
$("select#first_box").val(data.first).change();
if (data.target_release){
$("select#second_box").val(data.second).change();
}
}
}, "json");
第一变化事件起作用,但它立即触发第二变化事件,并且第一变化事件的值还不存在。
在触发第二个更改事件之前,如何等待第一个更改事件完成?
您可以使用回调-嵌套它们
if (data.platform_seen) {
$("select#first_box").val(data.first).change(function() {
// starts after first change function completes
if (data.target_release){
$("select#second_box").val(data.second).change();
}
});
}
您可以尝试将其包装在setTimeout()
中,使用任意低的时间或根本没有时间。
setTimeout(function () {
if (data.target_release) {
$("select#second_box").val(data.second).change();
}
});
setTimeout
在执行之前等待当前进程完成。因此,在内部调用匿名函数将等待第一次更改发生,然后再运行内部代码
不输入时间,或者输入0
的时间,本质上会告诉它在当前进程完成后立即调用此匿名函数。
相关文章:
- 选择onclick事件jquery
- 用于多个类事件Jquery的单个函数
- 激发滑块's幻灯片事件jquery ui
- 设置重复按钮以注册点击事件jquery
- 保留当前点击事件jquery
- 启动/停止按键事件jquery
- 在事件jquery中插入一个函数
- 删除克隆的事件JQuery
- typeahead选择事件(jQuery)的动态绑定
- 触发自定义事件 Jquery
- 绑定两次或更多次的事件 jquery
- 单击时的事件 jquery 不起作用
- 在鼠标悬停事件 jquery 上显示边框的内容
- 同时触发两个鼠标事件 jQuery
- 焦点事件 jquery 组合框/自动完成
- 如何在页面中捕获“正文”和“正文”事件[Jquery].
- 将对象传递给事件 jQuery
- 验证“取消”上的字段 单击Onbeforeunload事件JQUERY
- 复选框单击事件 jQuery 不起作用
- 口述事件jquery顺序