2012-12-11 5 views
1

에 나는 동적으로트리거 액션 jQuery를로드 이벤트 완료

jQuery('#opt_test').load('getextra.php?query=ls&id=2').change(); 

또 다른 선택 상자가 변경 이벤트에 바인딩이 하나의 데이터에 의존 jQuery를로드 이벤트를 사용하여 선택 상자를로드하는 웹 페이지가 있습니다.

jQuery('#opt_test').change(function() { 
    var test = jQuery('#opt_test').val(); 
    alert ('var'); 
    jQuery('#opt_host').load('getextra.php?query=ls&id=4&master=' + test); 
}) 

두 가지 문제가 있습니다. 위의로드 이벤트를 사용하여 #opt_test에 대한 변경 이벤트를 발생시킬 수 없습니다.

이 문제를 해결하기 위해 코드 일부를 수동으로 복제하면 이전 값이 표시되도록로드 완료 전에 선택 값을 표시하는 경고가 나타납니다.

로드가 완료된 후에이 이벤트를 트리거하려면 어떻게합니까?

답변

0

.load을 사용하면 비동기 호출이 완료 될 때 호출 할 콜백 함수를 설정할 수 있습니다. 그렇지 않으면 .change이 전에 실행할 수 있습니다. 변경 :

jQuery("#opt_test").load('url', function() { 
    $("#opt_test").change(); 
}); 
+0

내 이벤트는 .change로 부르지 않았지만 코드를 조작하여 작동하도록 만든 코드를 복제 할 수있었습니다. – trevrobwhite