2013-07-16 27 views
0

我想打電話給後結束通話前一個變化的方法是這樣的變化()方法:等待前面的AJAX調用()

$('#editMPS_structure .alcanceMarca').find('.marca').val(enlaceMarca).change(); 
$('#editMPS_structure .alcanceProducto').find('.producto').change(); 


$('.marca').on('change', function() { 
    $.ajax({ //ajax call to populate .producto select according a value of marca }) 
}) 

$('.producto').on('change', function() { 
    $.ajax({ //ajax call}) 
}) 

但問題是,呼叫第二.alcanceProducto的change()方法沒有完成first change()方法,我需要在完成第一次更改()後立即調用second change()。

回答

1

在第一個ajax調用的回調中觸發第二個更改函數。這是通過指定function來調用ajax請求的success來完成的。

$('#editMPS_structure .alcanceMarca').find('.marca').val(enlaceMarca).change(); 

$('.marca').on('change', function() { 
    $.ajax({ 
     url: //url here, 
     success: function(){ 
     $('#editMPS_structure .alcanceProducto').find('.producto').change(); 
     } 
    }) 
}) 
+0

是的,是第一個解決方案,但我想存在另一個函數分別使用change()方法,而不是嵌套它們 – SoldierCorp