2012-03-28 7 views

Antwort

1

$.load() ist eine bequeme Methode von $.ajax() und standardmäßig ersetzt html des Wählers. Für mehr Flexibilität verwenden Sie eine andere Methode wie $.get, die Ihnen den Zugriff auf Rückgabedaten ermöglicht und das DOM nicht manipuliert. Sie können dann statt

http://api.jquery.com/jQuery.get/

$("#post_button").click(function(){ 
    $.get("<?php echo SITEURL; ?>/newpost.php", data, function(returnData){/* assuming your data var is data to send to server*/ 
      $("#parent-post").append(returnData); 
      special_functions();             

    }); 

}); 
0

Das einfachste ist wahrscheinlich das Laden des Remote-Inhalts in ein Kind-Element des Div und nicht das Div selbst. Beachten Sie auch die Änderung, die ich in der JQuery vorgenommen habe (Laden Sie das Element, in das Sie den Inhalt laden möchten, mit load).

<div id="parent-post"> 
Lorem ipsum dolor sit amet. 
<div id="inner_div"></div> 
</div> 

<script type="text/javascript"> 
$("#post_button").click(function(){ 
    $("#inner_div").load("<?php echo SITEURL; ?>/newpost.php", 
         data, special_functions); 

}); 

</script> 
0

Wo ist load Methode hier definiert? Wenn Sie erwarten, dass es jQuery load ist, sollten Sie es auf diese Weise verwenden.

$(element).load('url'); 

Da Sie die Inhalte werden wollen angehängt und nicht zu ersetzen, dann ist load die richtige Methode zu verwenden. Verwenden Sie eine andere Methode wie get, post oder ajax, um den Inhalt von PHP zu erhalten, und fügen Sie es dann in den erforderlichen Container ein.

$.get("<?php echo SITEURL; ?>/newpost.php", function(response){ 
    $("#parent-post").append(response); 
    special_functions(); 
}); 
0
$.getJSON("<?php echo SITEURL; ?>/newpost.php", function(data){  
    $("#parent-post").append(data);   
     special_functions(); 

}); 

wo getJSON $ sein kann .get, $ .post und hängen Sie ersetzen.

0

hier gehen Sie. Da AJAX Daten vom Server zieht verwendet es ein asynchrones Verhalten, was bedeutet, dass Sie ihm eine Rückruffunktion geben, müssen ihnen sagen, was zu tun ist, wenn sie die Daten erhalten:

 $("#post_button").click(function(){ 
    $.post("<?php echo SITEURL; ?>/newpost.php", data, function(result) { 
     $("#parent-post").append(result); 
     special_functions(); 
     }); 
}); 

Verwandte Themen