클래스 'changetag'
가있는 링크를 클릭하면 jQuery가 트리거됩니다. changetag.php를 통해 데이터베이스를 업데이트하기 위해 $.ajax()
을 사용하고 있습니다.첫 번째 및 업데이트 페이지의 성공시 두 번째 jQuery.ajax 인스턴스 호출 방법
그런 다음 클래스를 on/off로 전환하여 링크의 시각적 모양을 변경합니다. 코드는 다음과 같습니다.
$(function() {
$(".changetag").click(function(){
var element = $(this);
var I = element.attr("id");
var info = 'switch_tag=' + I;
$.ajax({
type: "POST",
url: "_js/changetag.php",
data: info,
success: function(){}
});
$("#li_"+I).toggleClass("off on");
element.toggleClass("off on");
return false;
});
});
완벽하게 작동합니다. 그러나 위의 경우 성공한 경우 데이터를 가져 와서 페이지의 다른 영역을 업데이트하는 두 번째 PHP 호출을 추가하려고합니다.
내가 추가하려고하는 :
$.ajax({
url: "_js/loaddata.php",
success: function(results){
$('#listresults').empty();
$('#listresults').append(results);
}
});
그냥 성공에 추가 : function() {} 작동하지 않는 것 같습니다. 내가 테스트하는 완전한 코드는 다음과 같습니다.
$(function() {
$.ajaxSetup ({cache: false});
$(".changetag").click(function(){
var element = $(this);
var I = element.attr("id");
var info = 'switch_tag=' + I;
$.ajax({
type: "POST",
url: "_js/changetag.php",
data: info,
success: function(){
$.ajax({
url: "_js/loaddata.php",
success: function(results){
$('#listresults').empty();
$('#listresults').append(results);
}
});
}
});
$("#li_"+I).toggleClass("off on");
element.toggleClass("off on");
return false;
});
});
PHP 스크립트가 성공적으로 호출되었으며 토글 클래스가 작동하지만 뽑아 낸 데이터는 어떤 이유로 #listresults에 기록되지 않습니다.
어떻게 작동하지 않습니까? 오류가 있습니까? 결과 변수가 데이터를 반환합니까? – Patrick
체인 연결 시도 - $ .ajax ({}). ajax ({}); –
@partick @ elad-lachmi 실제로 두 호출 모두 성공한 것처럼 보입니다. 그냥 $ ('# listresults')라고 생각합니다. 및 $ ('# listresults'). append (results); 즉, 페이지를 업데이트하지 못했습니다 – Paul