Ruft die Instanz des untergeordneten Objekts im iframe ab

8

Ich muss ein Webformular automatisieren, das iframes verwendet, um untergeordnete 'Formulare' einzubetten, die als separate HTML-Seiten betrachtet werden können.

Sie erhalten also ein übergeordnetes Dokument, das die so genannten Sichtfelder enthält, die Iframes sind. Innerhalb der Iframes befinden sich die "Kind" eingebetteten Webseiten.

Ein einfaches Beispiel:

  

Ich habe viel aus dem HTML ausgeschnitten, um es auf eine vernünftige Größe zu reduzieren

%Vor%

Dann könnte der eingebettete Kind-HTML-Code einfach so aussehen:

%Vor%

Das im STYLE enthaltene html = sieht ein bisschen komisch aus - nicht sicher warum es so ist. Aber ich kann sehen, dass es eine Art Iframe ist.

Ich habe eine Instanz des Dokumentenobjekts der obersten Ebene und ich habe eine Instanz des div mit id = 123. Ich muss das Textarea-Objekt im Kind automatisieren. Ich habe Folgendes versucht, was nicht funktioniert hat.

%Vor%

Ich teste das mit IE9.

Kann ich eine Instanz der inneren Webseite mit diesem HTML bekommen? Wenn ja, wie?

BEARBEITEN

Wenn es hilft, hier ist die tatsächliche, unbearbeitete HTML für das fragliche div.

%Vor%

Das div hält die untergeordnete Form. Das untergeordnete Formular ist wie eine andere HTML-Webseite. Es hat Standard-HTML-Eingabefelder und Textareas. Ich muss Text in die Textarea im Kind (vom Elternteil) posten. Aber das Problem ist, ich kann noch nicht auf das Child-HTML-Objekt von der Eltern zugreifen.

    
Angus Comber 07.04.2013, 17:17
quelle

2 Antworten

8

Wenn Sie versuchen, die Daten vom übergeordneten Element in iframe zu bekommen, dann suchen Sie genau danach. Beachten Sie, dass dies nur funktioniert, wenn die iframe Quelle eine Seite aus derselben Domain ist, sonst hätten Sie nicht die Berechtigung, auf ihren Inhalt zuzugreifen.

Ссылка

Stelle zuerst sicher, dass dein iframe geladen ist, dann kannst du ihn aufrufen, um auf dein iframe dom zuzugreifen.

%Vor%

Aktualisierung:

Wenn Sie eine reine js-Lösung möchten, können Sie dies versuchen:

%Vor%

Ссылка

    
Du D. 17.04.2013 23:08
quelle
2

Es ist möglich, dass der Inhalt des iframe nicht geladen wird. Sie können versuchen, zu überprüfen, ob der Iframe geladen ist, und wenn dies der Fall ist, versuchen Sie, auf das Dokumentelement zuzugreifen.

Beispielsweise wird der Code für den Zugriff auf das Dokumentelement des iframe in die Funktion AfterFrameLoads() aufgeteilt, die während des onload-Ereignisses des iframe aufgerufen wird.

%Vor%     
KernelPanik 14.04.2013 04:51
quelle

Tags und Links