stw: vordefinierte JavaScript-Objekte

Beitrag lesen

Hallo Eisbär,

Folgende Zeilen bitte nicht persönlich nehmen.
Du warst einfach schneller als ich und jetzt kriegst DU halt den Anschiss <G>.

myBeispielobjekt = new beispiel()

Was ist das ?
VBScript ? (sorry)
Wo ist das verdammte Semikolon ?!

Das Objekt hätte nun die undefinierten Eigenschaften myBeispielobjekt.form und myBeispielobjekt.name.

Was ist eine undefinierte Eigenschaft ? <g>
Eine Eigenschaft die nicht definiert ist ist keine Eigenschaft !

Das Objekt selber ist ein Formobjekt, dass keinen Verweis auf das übergeordnete Objekt enthält (ist mir jedenfalls nich bekannt).

Leider !

for(i=0;i<popupname.document.layers.count;i++)
{
   for(j=0;j<popupname.document.layers[i].forms.count;j++)
   {
      if(popupname.document.layers[i].forms[j].name == this.name)
      {
         // Treffer !
         layername = popupname.document.layers[i].name;
         // Dein Code...
      }
   }
}

Bei Objektreferenzen ist eine Überprüfung auf einen Eigenschaftswert nicht sinnvoll, jedenfalls nicht wenn ich das Objekt suche.

zb:
popupname.document.layers[i].forms[j] == this

vorrausgesetzt "this" ist das gesuchte Formularobjekt.

Was m. benötigt ist eigentlich eine Suchfunktion, welches den Layer ermittelt, der das Formularobjekt (Funktionsparameter) enthält.

<example>

function findLayerOfForm( formObj ) //- return layer or null
{
  var i = 0;
  var layerObj;

while (i < popupWinObj.document.layers.length) //-hard coding
  {
    layerObj = popupWinObj.document.layers[i++];

if (hasForm(layerObj, formObj)) //- search the form
      return layerObj;
  }

return null;
}

function hasForm( layerObj, formObj )
{
  var i = layerObj.document.forms.length;

while (i < layerObj.document.forms.length)
  {
    if (layerObj.document.forms[i++] == formObj)  //- compare by referenz
      return true;
  }

return false;
}

functio checkForm( formObj )
{
  ...
  var layer = findLayerOfForm( formObj );
  ...
}

</example>

Aber mal erlich, wer möchte einen Layer ?
So, das mußte ich jetzt mal loswerden <g>.

cu
stw