Dominik Berger: ActiveXControl braucht Referenz zu iFrame

Hy Leute,

es müßte doch korrekt sein, einen iFrame so anzusprechen:

document.frames("iFrameName")

und dann müßte ich ein Objekt darauf so referenzieren können:

objReferenz = document.frames("iFrameName").document.all.item("objID")

und nun will ich das aus einem in VB entwickelten ActiveXControl heraus tun, das auf der Seite liegt, dazu muß man im Control 'UserControl.parent' verwenden:

objReferenz = UserControl.Parent.frames("iFrameName").document.all.item("objID")

und das tut dann aber nicht ('Objekt unterstützt diese Methode nicht' oder so).

Die änhnliche VB-Syntax tut für ein anderes Objekt, das nicht auf dem iFrame liegt: dann funktioniert

objReferenz = UserControl.Parent.document.all.item("objID2")

Wo dran kann das liegen? Kann es sein, daß der Objektverweis über die frame-grenzen heraus nicht geht? Ein Case-Probleme vielleicht? Oder ist doch was an meiner syntax falsch?

Ist wohl ein sehr spezielles Problem, aber vielleicht ist da draußen wer, der mir helfen kann

vielen dank, domiberger

  1. Hallo!

    document.frames("iFrameName")

    Besteht nicht die Möglichkeit, dass du das iframe einfach mit document.iFrameName ansprichst? In JS geht das zumindest so.
    Viele Grüße,
    Alexander Kirk

    1. document.frames("iFrameName")

      document.iFrameName ansprichst?

      hy alexander,

      also document.iFrameName.objID oder document.iFrameName.document.objID  tut bei mir nicht - ermeldet,daß objId kein Objekt sei bzw. sogar das document kein Objekt sei

      der jscript-code
      document.frames("IFrame1").document.objID.testMethode() tut übrigens, das ist nicht das problem - das problem entsteht erst, wenn ich das document aus dem activeXcontrol mit UserControl.parent anzusprechen versuche, dann tut der verweis auf den iframe nicht

      trotzdem danke

  2. Ist mir ja peinlich, aber nun habe ich nochmal selber nachgetestet und o wunder es hat nun doch getan - weiß der henker, was ich vorher falsch gemacht hatte - also der vollständigkeitshalber: um aus einem ActiveXControl, das auf einer HTML-Seite liegt, ein anderes Objekt anzusprechen, daß auf einem iFrame zu dieser Seite liegt, schreibt man:

    UserControl.parent.frames "FrameName").document.objID.eineMethode()

    sorry für dieses selbstgespräch im forum,

    domib