我已经创建了几个包含众多步骤的事件。例如:
$("#CourseID").change
会自动收集有关课程的信息。它还为课程中的每个洞创建一系列复选框。然后默认检查每个框。
我还有一个与按钮点击链接的功能$("#ClearAll").click
。这将清除所有复选框。
我现在有第三个事件$("#SetDate").change
我需要调用以上两个:
$("#CourseID").trigger('click')
$("#ClearAll").trigger('click')
因为在这种情况发生之后,我需要经过一系列的漏洞并检查每一个漏洞。
我的问题是它在$("#ClearAll").trigger('click')
完成之前正在运行$("#CourseID").trigger('click')
。因此,复选框未完成。
任何见解都将受到赞赏。我对jQuery很新,所以请详细解释。
答案 0 :(得分:0)
您可以使用承诺或推迟。这些用于这种情况,你需要在另一个函数之前调用一个函数。 deferred.promise是一个很好的起点。
答案 1 :(得分:0)
我发现了这个问题。 $("#CourseID")。change事件有一个ajax调用。使用$(document).ajaxComplete(function () {
$("#ClearAll").trigger('click');
}
然后它等待CourseID函数的完成,复选框将被清除。
Jon - 抱歉我没有发布代码,但如果没有1500行代码就没有意义。