JQuery语句只有在成功函数内的警报之后才能工作

时间:2015-08-31 07:53:41

标签: javascript jquery

当我在$('#add_new').trigger('click');下面的语句之后发出警报时,它可以正常工作但是当警报被删除时,它下面的语句不起作用。我认为这是因为触发事件在下面的语句执行之前没有完成。  我是Jquery的新手,有人可以帮忙吗?感谢。

function addCourseMember(){
    var benId = $('#courseBenId').val();
    $.ajax({
        url:'${createLink(controller: 'classCourseCalendar',action: 'getBenMemberDetails')}',
        data:{benId:benId},
        type:'POST',
        async:false,
        success:function(data){
            $('#add_new').trigger('click');
            $("#firstName").val(data.firstName);
            $("#lastName").val(data.lastName);
        }
    })
}

2 个答案:

答案 0 :(得分:2)

添加 ajaxComplete 为我工作。感谢。

    function addCourseMember(){

    var benId = $('#courseBenId').val();
    $.ajax({
        url:'${createLink(controller: 'classCourseCalendar',action: 'getBenMemberDetails')}',
        data:{benId:benId},
        type:'POST',
        async:false,
        success:function(data){
            $('#add_new').trigger('click');
            $(document).ajaxComplete(function(){
                $("#firstName").val(data.firstName);
                $("#lastName").val(data.lastName);
            })
        }

    })
}

答案 1 :(得分:1)

Saurav,ajaxComplete会工作,但最好使用setTimeOut(比如最短时间 - 1秒)来保持直到你的触发器完成。