Dirk Müller: Existiert ein Objekt

Hallo,
gibt es eine einfache Möglichkeit abzufragen ob ein Formular-Objekt (textarea) existiert?

Wenn ich die Anfrage:

if (document.getElementById("teaserEditor").value == undefined) {...

stelle funktioniert das wunderbar im Firefox aber IE gibt einen Fehler aus.

Wenn ich

if (document.getElementById("teaserEditor") == undefined) {...

stelle funktioniert das im IE aber Firefox hat darunter ein Objekt definiert.

Es sollte doch eine Möglichkeit geben ohne Browserabfrage auszukommen, oder?

  1. if (document.getElementById("teaserEditor").value == undefined) {.»»
    if (document.getElementById("teaserEditor") == undefined) {...

    if(document.getElementById["teaserEditor"]){

    }

    Das ist der Code. So fragt man ein Objekt ab. Es gibt true zurück, wenn das Objekt existiert, false, wenn das Objekt nicht existiert.

    1. if (document.getElementById("teaserEditor").value == undefined) {.»»
      if (document.getElementById("teaserEditor") == undefined) {...

      if(document.getElementById["teaserEditor"]){

      }

      Das ist der Code. So fragt man ein Objekt ab. Es gibt true zurück, wenn das Objekt existiert, false, wenn das Objekt nicht existiert.

      Das scheint es nicht gebracht zu haben. Habe jetzt folgenden Code:

      if (!document.getElementById("teaserEditor")) {
          document.getElementById("teaser").value = document.getElementById("teaserEditorNO").value;
      } else {
          document.getElementById("teaser").value = document.getElementById("teaserEditor").value;
      }

      Es wird aber "undefined" an das Objekt teaser übergeben obwohl entweder teaserEditor oder teaserEditorNO existiert.

      1. Hallo Dirk,

        Es wird aber "undefined" an das Objekt teaser übergeben obwohl entweder teaserEditor oder teaserEditorNO existiert.

        ich mutmaßs schlimmes, aber wenn Dir auch weiterhin nicht am rumprobieren von Mutmaßungen gelegen ist, dann poste doch mal den Quelltext - insbesondere beschreibe bitte, warum ein HTML-Element in Deinem Dokument mal vorhanden sein kann und mal nicht, sodaß Du seine Existens abfragen mußt!

        Gruß aus Berlin!
        eddi

        1. Hallo Dirk,

          Es wird aber "undefined" an das Objekt teaser übergeben obwohl entweder teaserEditor oder teaserEditorNO existiert.

          ich mutmaßs schlimmes, aber wenn Dir auch weiterhin nicht am rumprobieren von Mutmaßungen gelegen ist, dann poste doch mal den Quelltext - insbesondere beschreibe bitte, warum ein HTML-Element in Deinem Dokument mal vorhanden sein kann und mal nicht, sodaß Du seine Existens abfragen mußt!

          Gruß aus Berlin!
          eddi

          es ist mal da und mal nicht weil da eine activeX komponente die dazu installiert werden muss aufgerufen wird. wenn diese nicht da ist wird halt das feld teaserEditorNO verwendet ansonsten teaserEditor

      2. Es kann nur an einem liegen:

        if(document.getElementById["teaserEditor"]){
        if(document.getElementById("teaserEditor")){

        Du hast runde Klammern, ich eckige.
        Also, wenn es jetzt nicht funktioniert, dann weiß ich leider auch nicht weiter...

  2. gibt es eine einfache Möglichkeit abzufragen ob ein Formular-Objekt (textarea) existiert?

    klar.

    Wenn ich die Anfrage:

    if (document.getElementById("teaserEditor").value == undefined) {...

    Du willst doch Wissen, ob das Objekt vorhanden ist und nicht ob es einen Wert hat.

    stelle funktioniert das wunderbar im Firefox aber IE gibt einen Fehler aus.

    Was für einen?

    Wenn ich

    if (document.getElementById("teaserEditor") == undefined) {...

    Eigentlich sollte das reichen:

    if (!document.getElementById("teaserEditor")) {...

    Struppi.