6 Stimmen

Herunterladen des Inhalts der Seite mit Ajax Jquery

Grüße, wie kann ich einige Seiteninhalte mit Ajax und Jquery herunterladen: Ich mache so etwas (2 Versionen in einem Skript):

$("p").click(function() {

    $('#result').load('http://google.com');

            $.ajax({
                url='www.google.com',
                success: function(data) {
                    $("result").html(data);
                    alert('Load was performed.');
                    var url = 'www.wp.pl';
                    $('div#result').load(url);
                    //var content = $.load(url);
                    //alert(content);
                    //$("#result").html("test");
                }
            });
});

aber es gibt keinen Inhalt zurück

8voto

Darin Dimitrov Punkte 990883

Aufgrund von Einschränkungen Sie können den Inhalt einer Webseite nicht mit AJAX herunterladen, die nicht auf derselben Domäne gehostet wird wie die Domäne, die dieses Skript hostet. Außerdem haben Sie einen Syntaxfehler in Ihrer .ajax Funktionsaufruf. Er sollte wie folgt aussehen:

$.ajax({
    url: 'http://yourdomain.com/page1.htm',
    success: function(data) {
        $("result").html(data);
        alert('Load was performed.');
        var url = 'http://yourdomain.com/page2.htm';
        $('div#result').load(url);
    }
});

7voto

Pavlo Punkte 291

Sie könnten YQL als Proxy für Ihren Aufruf verwenden:

$.ajax({
  url:"http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20html%20where%20url%3D'http://www.google.com'&format=xml&callback=callback",
  type: 'GET',
  dataType: 'jsonp'
});

  function callback(data){
    $('#result').html(data.results[0]);
  }

2voto

Seidr Punkte 4901

Es ist zwar nicht möglich, einen Host, der außerhalb der aktuellen Domäne liegt, direkt von Javascript aus abzufragen, aber Sie können ein Proxy-Skript verwenden, um die gewünschten Daten abzurufen.

Domänenübergreifende AJAX-Abfrage mit jQuery: http://jquery-howto.blogspot.com/2009/04/cross-domain-ajax-querying-with-jquery.html

Sie können auch das flXHR-Skript verwenden, das in viele Javascript-Bibliotheken (einschließlich jQuery) integriert werden kann.

flXHR: http://flxhr.flensed.com/

1voto

JeroenEijkhof Punkte 2172

Sie könnten auch einfach eine PHP/ASP/RUby-Seite aufrufen, die wiederum die externen Aufrufe für Sie erledigt und die Informationen in der von Ihnen benötigten Weise darstellt.

1.  PAGE --> PHP --> External web
        (Ajax)

2.  PAGE <-- PHP <-- External web
      (callback)

1voto

James Westgate Punkte 10931

Sie müssen etwas namens JSONP verwenden, um über die Domäne zu gehen. Seider hat psoted mehr Details, wie man dies mit jQuery zu tun.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X