Don P: if (function()) immer true?!

Beitrag lesen

Hallo,

Die Funktion wird aufgerufen (check_form), durchläuft aber nur bis zum ersten input, färbt es, und übergibt dann true

Das ist nicht möglich.
check_form übergibt *immer* false zurück, nachdem etwas eingefärbt wurde...

        $("#fe_"+element[1]).css("background-color","#f90");  
        return_ = false;  

~~~...  
~~~javascript
        $("#fe_"+element[1]).parent().parent().css("background-color","#FFF4B5");  
        return_ = false;  

~~~...  
~~~javascript
        $("#"+elementname[0].id).parent().parent().css("background-color","#FFF4B5");  
        return_ = false;  

...

          return  return_;  

...oder das Script bricht mit Fehler ab, dann gibt es gar keinen Rückgabewert, also auch dann nicht true.

Problem:
check_form wird frühzeitig abgebrochen

Wo und warum bzw. unter welchen Umständen? Analysiere das mal. Du kannst z.B. an den verdächtigen Stellen die Inhalte deiner Variablen mit alert`` ausgeben. Dann sollte sich ja zeigen, was wann nicht wie erwartet aussieht.

»»         function  change_step(direction)  {  

>   if (check_form(bew_str[actual])==true) {  
>     arbeite()  
>   }  
>   return false;  
> }

und change_step übergibt true

Das ist nicht möglich.
change_step gibt *immer* false zurück, oder das Script bricht mit Fehler ab, dann gibt es gar keinen Rückgabewert, also auch dann nicht true.

=> Das Problem liegt wahrscheinlich nicht da, wo du es vermutest, sondern ganz woanders...

Gruß, Don P