HighDots Forums  

finde den Fehler nicht :-(

Javascript (German) Programmiersprache JavaScript. (de.comp.lang.javascript)


Discuss finde den Fehler nicht :-( in the Javascript (German) forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
Rene Drescher-Hackel
 
Posts: n/a

Default finde den Fehler nicht :-( - 01-04-2005 , 05:50 AM






Hallo,

bis vor kurzem gings noch. Geändert hab ich auch nichts. Nun gehts nicht
mehr.

Folgende Funktion wird mit einem onclick aufgerufen:

function add(elm, elm2)
{
var obj = document.getElementById(elm);
var obj2 = document.getElementById(elm2);
for (i=obj.length-1;i>(-1);i--)
{
if (obj.options[i].selected)
{
var newItem = new
Option(obj.options[i].value,obj.options[i].value,false,false);
obj2.options[obj2.length] = newItem;
obj.options[i] = null;
}
}
}

Die JavaScript-Konsole in FireFox meldet:

obj2 has no properties

womit adhoc erst mal nix anfangen kann.

Komischerweise funktioniert diese Funktion nach wie vor:

function addTB(elm, elm2)
{
var obj = document.getElementById(elm); // TextBox-Element
var obj2 = document.getElementById(elm2);// ListBox-Element
var newItem = new Option(obj.value,obj.value,false,false);
obj2.options[obj2.length] = newItem;
obj.value = "";
obj.focus();
}

Beide Funktionen unterscheiden sich nicht wirklich. Doch warum
funktioniert die obere nicht??

Danke

Rene


Reply With Quote
  #2  
Old   
Martin Honnen
 
Posts: n/a

Default Re: finde den Fehler nicht :-( - 01-04-2005 , 06:34 AM








Rene Drescher-Hackel wrote:


Quote:
Folgende Funktion wird mit einem onclick aufgerufen:

function add(elm, elm2)
{
var obj = document.getElementById(elm);
var obj2 = document.getElementById(elm2);
for (i=obj.length-1;i>(-1);i--)
{
if (obj.options[i].selected)
{
var newItem = new
Option(obj.options[i].value,obj.options[i].value,false,false);
obj2.options[obj2.length] = newItem;
obj.options[i] = null;
}
}
}

Die JavaScript-Konsole in FireFox meldet:

obj2 has no properties

womit adhoc erst mal nix anfangen kann.
Kann man sicher, wenn man du die Argumente nennst, mit denen add
aufgerufen wird, und ob es ueberhaupt passende HTML-Elemente mit der
entsprechenden id gibt.

--

Martin Honnen
http://JavaScript.FAQTs.com/


Reply With Quote
  #3  
Old   
Thomas 'PointedEars' Lahn
 
Posts: n/a

Default Re: finde den Fehler nicht :-( - 01-04-2005 , 06:51 AM



Rene Drescher-Hackel wrote:

Quote:
bis vor kurzem gings noch. Geändert hab ich auch nichts. Nun gehts
nicht mehr.
Das kann nicht sein. Schau bitte erst in die <http://glasgoogle.de/>,
bevor Du hier postest.


PointedEars


Reply With Quote
  #4  
Old   
Rene Drescher-Hackel
 
Posts: n/a

Default Re: finde den Fehler nicht :-( - 01-04-2005 , 07:54 AM





Quote:
Thomas 'PointedEars' Lahn schrieb:
Das kann nicht sein. Schau bitte erst in die <http://glasgoogle.de/>,
bevor Du hier postest.

hilft aber auch nicht weiter.
Aber mal im ernst, denkst du wirklich, dass ich nicht vorher schaue,
woran es liegen könnte? Mir ist der Sinn einer NG schon klar, genauso
wie mir klar ist, wie schnell man hier was auf die Finger bekommt, wenn
man zu vorschnell postet, ohne selbst erst einmal zu schauen, ob es eine
aussagefähige Fehlermeldung gibt, etc...

Aber es ist so, dass ich vor Weihnachten das letzte Mal dran gearbeitet
habe und nun weiter schaffen wollte. Nur geht komischerweise nix. Die
Parameter werden richtig übergeben. Die Funktion wird auch wirklich
aufgerufen und stoppt eben genau an der Stelle, wo eben die Zuweisung
statt finden soll.

Aber manchmal ist es eben auch so, dass man ziemlich blöd immer den
Fehler im Code anstiert und ihn nicht erkennt - so wie den Wald und die
Bäume. Und da ist es (zu mindest für mich) manchmal sehr hilfreich, wenn
noch ein zweiter mal drauf schauht.

Gruß

Rene



Reply With Quote
  #5  
Old   
Thomas 'PointedEars' Lahn
 
Posts: n/a

Default Re: finde den Fehler nicht :-( - 01-04-2005 , 11:30 AM



Rene Drescher-Hackel wrote:

Quote:
Thomas 'PointedEars' Lahn schrieb:
Das kann nicht sein. Schau bitte erst in die
http://glasgoogle.de/>, bevor Du hier postest.
Error 42: Context lost.

Quote:
hilft aber auch nicht weiter.
Fhcsal.

Quote:
Aber mal im ernst, denkst du wirklich, dass ich nicht vorher schaue,
woran es liegen könnte?
Jedenfalls denke ich, dass Du da noch erheblich Nachholbedarf hast.
Oder hast Du etwa alert(...) bzw. Venkman benutzt, d.h. mal *richtig*
debuggt?

Weshalb postest Du nicht den Methodenaufruf bzw. einen Link zu einem
Testcase, wo doch offensichtlich etwas mit den übergebenen Argumenten
(d.h. den IDs der Elemente) nicht stimmen kann?

Quote:
[...]
Aber manchmal ist es eben auch so, dass man ziemlich blöd immer den
Fehler im Code anstiert und ihn nicht erkennt - so wie den Wald und
die Bäume. Und da ist es (zu mindest für mich) manchmal sehr
hilfreich, wenn noch ein zweiter mal drauf schauht.

function add(elm, elm2)
{
var obj = document.getElementById(elm);
var obj2 = document.getElementById(elm2);
for (i=obj.length-1;i>(-1);i--)
Das muss/sollte besser

if (obj)
{
for (var i = obj.options.length; i--

heißen, wenn

Quote:
{
if (obj.options[i].selected)
funktionieren soll.

Quote:
[...]
Die JavaScript-Konsole in FireFox meldet:

obj2 has no properties

womit adhoc erst mal nix anfangen kann.
^^^^^
Problem erkannt?

Quote:
Komischerweise funktioniert diese Funktion nach wie vor:

function addTB(elm, elm2)
{
var obj = document.getElementById(elm); // TextBox-Element
var obj2 = document.getElementById(elm2);// ListBox-Element
var newItem = new Option(obj.value,obj.value,false,false);
obj2.options[obj2.length] = newItem;
Zwischen obj.value und obj.options[...].value besteht ein Unterschied,
der Wert von ob.value ist OM-abhängig.

Quote:
obj.value = "";
obj.focus();
Lies bitte <http://pointedears.de/scripts/test/whatami>.

Quote:
}

PointedEars


Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.