2016-08-03 53 views
0

Gestern, dank der Hilfe hier, habe ich gelernt, wie man AJAX'ed Inhalt lädt und die Seite gleich bleibt. Die Skript-Tags wurden jedoch nicht geladen. Nach einigen Nachforschungen scheint es, dass wenn Sie einen Selektor in .load verwenden, es nicht das Tag Zeug lädt. Die einfachste Lösung für mich wäre etwas, das sie nur ausführen und die Funktionalität behalten würde, aber ich habe viele Dinge ausprobiert und keiner scheint zu funktionieren.AJAX mit Load und Selector lädt keine Skripte, aber nichts, was ich gefunden habe, scheint zu funktionieren

Ich versuchte .getScript auf .ajaxComplete etc .. (Ich kann mich ernsthaft nicht erinnern alles, was ich versuchte, ich habe das Web den ganzen Tag gesucht) Ich bekomme manchmal wie eine Alarmbox, aber wenn ich initialisieren möchte Prettyphoto, es funktioniert nicht.

Dies ist der Code, den ich an einem anderen Benutzer hier für den AJAX Dank habe:

function ajaxPageLoader(request_url) { 
    console.log("Content loading from : "+request_url); 
    $("#ContentContainer").load(request_url+" #ContentContainer", function() { 
     window.history.pushState({}, "", request_url); // update current url in browser. 
     console.log("Content loaded"); 
    }); 
} 

ich diesen Code zu verstehen, aber kann nicht scheinen, einen Weg, um es mit dem verdammten Wähler zu finden :)

Oder gibt es überhaupt einen anderen Weg?

Vielen Dank!

Antwort

0

können Sie unter Code versuchen Sie haben Ihre Feld-ID mit Anfrage zu binden, die die Ausgabe von Serviceanruf

für Ihre Antwort
<script> 
$(document).ready(function(){ 

$.ajax({ 
     type: "{POST/GET}", 
     url: request-url, 
     data: "", 
     contentType: "application/json;charset=utf-8", 
     dataType: "json/xml", 

     success: function(result){ 
      $("#ContentContainer").html(result); 
     }, 
     error:function(result){ 
     } 
    }); 
}); 
</script> 
+0

Danke wird. Hmm Ich habe kein Feld. Es ist im Grunde das nur zu binden: 'ajax_link' $ (document) .auf ('Klick', function() { ajaxPageLoader ($ (this) .attr ('href')); return false; }); Ich bin wahrscheinlich Missverständnis Sie, tut mir leid. Ich habe diesen Code in die Funktion eingefügt, also ist es nicht auf document.ready. Ich werde ein bisschen tiefer graben. Ich bin mir aber noch nicht sicher, was ich falsch mache. Aber dieser Code ersetzt nur #ContentContainer div? Ich kann den Code nicht herausfinden, der sicherstellt, dass nur das Div für dasselbe Div der anderen Seite geändert wird. – ds24

+0

Ein Problem, das ich hatte, ist, dass beim Klicken auf einen Link die Seite insgesamt geändert würde. Aber als ich es änderte und es nur in einer Funktion anrief, änderte es den Inhalt nicht zum DIV, selbst wenn ich die "url: request-url" direkt auf die Seite änderte – ds24