3 Stimmen

fancybox ajax post to iframe

Ist es möglich mit fancybox eine Variable in den iframe zu stellen, wenn dieser geöffnet wird?

Ich habe derzeit:

function fancyBoxLoad(element) {
    var elementToEdit = $("#" + $(element).attr("class"));
    var content = encodeURIComponent($(elementToEdit).outerHTML());
    $.fancybox(
        { 'href': 'loadEditor.php' },
        {
            frameWidth: 750,
            frameHeight: 430,
            overlayShow: true,
            ajax: {
                type: "POST",
                data: 'content=' + content
            },
            type: 'iframe'
        }
    );
}

Es scheint so, dass wenn ich die type: 'iframe' Es werden zwar Daten gepostet, aber sie scheinen nicht im Iframe zu sein, und wenn ich die ajax: { type: "POST", data: 'content=' + content } stattdessen wird es in einem Iframe geöffnet, aber die Daten werden nicht veröffentlicht (das obige Beispiel funktioniert genauso)

Meine Frage lautet also: Ist das machbar?

1voto

Bialecki Punkte 28083

Wenn Sie einfach versuchen, Inhalte in einem Iframe zu platzieren, warum verwenden Sie nicht Fancybox, um den Iframe zu erstellen, und sobald Sie wissen, dass er erstellt wurde, greifen Sie dann über den Verweis zu, den Fancybox an Sie zurückgibt, und legen Sie Ihren Inhalt auf diese Weise fest. Ich bin mir nicht sicher, ob Sie den Inhalt an den Server und zurück senden wollen. Warten Sie einfach, bis der iframe geladen ist, und fragen Sie dann ein Element darin ab, und legen Sie den Inhalt fest.

0voto

alockwood05 Punkte 946

Wenn man sich den Quellcode von Fancybox v1.3.1 anschaut, schließen sie sich tatsächlich gegenseitig aus. Wenn Sie sich nicht wohl dabei fühlen, in den Quellcode einzutauchen und das Plugin zu bearbeiten, könnten Sie versuchen, mit GET-Variablen in Ihrem HREF als Ausweichlösung. Es sollte effektiv wie ein Posting funktionieren, da es ein AJAX-Aufruf ist, stellen Sie einfach sicher, dass das Backend die GET-Variablen empfangen kann.

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