Forenindex » Programmierung/Entwicklung » JavaScript » Formular / Array / auslesen

Formular / Array / auslesen

Anonym
Beiträge gesamt: 22827

10. Jun 2004, 18:28
Bewertung:

gelesen: 4857

Beitrag als Lesezeichen
Hallo Freaks!

Habe folgendes Javascript und würde gerne wissen, was damit nicht stimmt, da es nicht funktioniert! Wäre schön, wenn mir jemand be-
hilflichsein könnte. Ich baue auf Eure Unterstützung!

function validateTest(dieAbfrage){
validity = true;
var wert = 0;
Abfrage = new Array(6);
Abfrage[0] = "name";
Abfrage[1] = "vorname";
Abfrage[2] = "strasse";
Abfrage[3] = "plz";
Abfrage[4] = "ortschaft";
Abfrage[5] = "telefon";
for (var count=0; count <=6; count++){
if (!check_empty(document.test.(Abfrage[count]).value)){
wert = wert+1;
}
}
if (wert>0){
{ validity = false; alert('Formular ist unvollstaendig'); }
if (validity)
alert ("Vielen Dank für Ihre Anmeldung!.");
return validity;
}


function check_empty(text) {
return (text.length > 0); // gibt false zurück wenn leer
}

Viele Grüße
Fool

Formular / Array / auslesen

oesi50
  
Beiträge gesamt: 2315

10. Jun 2004, 18:38
Bewertung:

gelesen: 4857

Beitrag als Lesezeichen
hi anonym,


if (!check_empty(document.test.(Abfrage[count]).value)){

Was bewirkt diese Zeile?

Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)

Formular / Array / auslesen

Anonym
Beiträge gesamt: 22827

10. Jun 2004, 18:41
Bewertung:

gelesen: 4857

Beitrag als Lesezeichen
Hallo Oesi!

Die Funtion check_empty überprüft, ob im Eingabefeld etwas
eingeben wurde oder nicht!

Gruß Fool!

Formular / Array / auslesen

oesi50
  
Beiträge gesamt: 2315

10. Jun 2004, 18:43
Bewertung:

gelesen: 4857

Beitrag als Lesezeichen
 if (!check_empty(document.test.(Abfrage[count]).value)){
ich will wissen, was diese Zeile BEWIRKT!

und in dieser Zeile stimmt auch was nicht:
for (var count=0; count <=6; count++){

Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)

(Dieser Beitrag wurde von oesi50 am 10. Jun 2004, 19:04 geändert)

Formular / Array / auslesen

Anonym
Beiträge gesamt: 22827

10. Jun 2004, 19:14
Bewertung:

gelesen: 4857

Beitrag als Lesezeichen
Irgendwie kommt hier auch nur ein Teil an, von dem was
ich insgesamt schreibe. Ich versuche es nochmal!

Es wird das Eingabefeld überprüft, durch den Funktions-
aufruf check_empty, z. B. Eingabefeld "Name". Ist dieses
Feld leer wird der Zähler wert ( eine zeile darunter )
um eins erhöht.

test ist der Name des Formulars

Ich hoffe, wir reden nicht aneinander vorbei,
wenn doch bitte ich um Verständnis! ( Dann schreibe
doch bitte, was Du unter bewirken verstehst )

Fool

Formular / Array / auslesen

oesi50
  
Beiträge gesamt: 2315

10. Jun 2004, 19:34
Bewertung:

gelesen: 4857

Beitrag als Lesezeichen
> Wäre schön, wenn mir jemand behilflichsein könnte.

Ich wollte Dir in der Weise helfen, daß Du nochmal über diese Zeile nachdenkst.

Du hast bisher geschrieben, was diese Zeile bewirken soll. Ich wollte, daß Du mal darüber nachdenkst, welche Wirkung diese Zeile tatsächlich hat(bewirkt kommt von wirken oder Wirkung).

> Es wird das Eingabefeld überprüft,
welches?

Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)

PS.
Wenn jemand zu mir kommt und Hunger hat, kann ich ihm einen Fisch geben oder zeigen wie man angelt.
Was ist besser?

(Dieser Beitrag wurde von oesi50 am 10. Jun 2004, 19:38 geändert)

Formular / Array / auslesen

Anonym
Beiträge gesamt: 22827

10. Jun 2004, 19:50
Bewertung:

gelesen: 4857

Beitrag als Lesezeichen
Du forderst mich ja total! Hatte eigentlich auf direkte und unkompli-
zierte Hilfe gehofft ( Scherz )!

Aber ich versuche es nochmal, da ich glaube daß Du die Lösung meines
Problems weißt, mich aber nur auf die Folter spannen willst!?

Wir haben sechs Eingabefelder. Der erste Schleifendurchgang wird
gezählt, daß erste Eingabefeld mit dem Namen "Name", Abfrage[0]
wird ausgelesen. In diesem Falle setze ich doch für die Abfrage
aller Namensfelder (Abfrage[count] ein. Oder benutze ich die
Variable "dieAbfrage"? Habe hier ein total schlaues Buch, steht nur
nicht drin was ich wirklich wissen will!

Bitte spanne mich doch nicht so auf die Folter!

Fool

Formular / Array / auslesen

oesi50
  
Beiträge gesamt: 2315

10. Jun 2004, 19:55
Bewertung:

gelesen: 4857

Beitrag als Lesezeichen
 if (!check_empty(document.test.(Abfrage[count]).value)){

Konzentriere Dich mal nur auf diese Zeile.
Eigentlich müsste Dir Dein Browser schon einen Hinweis gegeben haben.

Formular / Array / auslesen

Anonym
Beiträge gesamt: 22827

10. Jun 2004, 20:09
Bewertung:

gelesen: 4857

Beitrag als Lesezeichen
Also Browsertechnisch läuft alles einwandfrei ohne Meldung.
Habe mich jetzt nochmal konzentriert. Weiß nur, daß mit
(Abfrage[count]) etwas nicht stimmt, da ich die anderen
Elemente aus einer ähnlichen Funktion abgeglichen habe
(dort wird jedes Eingabefeld einzeln abgefragt) und dort
funktioniert auch alles. Ich glaube, daß das heute mit mir
nichts mehr wird, danke Dir aber für Deine Unterstützung.

Fool

Formular / Array / auslesen

oesi50
  
Beiträge gesamt: 2315

10. Jun 2004, 20:16
Bewertung:

gelesen: 4857

Beitrag als Lesezeichen
so muss es sein:

for (var count=0; count < 6; count++){
if (!check_empty(document.test[Abfrage[count]].value) ){

die Variable count darf nur von 0 bis 5 laufen (das sind schon 6)

document.test['name'].value ist dein Text

'name' wird durch Abfrage[count] ersetzt


function validateTest(dieAbfrage){

dieAbfrage ist überflüssig.

so geht's besser:

function validateTest(){

Der aufruf ist dann onclick="validateText()"

onclick kann natürlich auch ein anderes Ereignis sein.

Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)

(Dieser Beitrag wurde von oesi50 am 10. Jun 2004, 20:33 geändert)

Formular / Array / auslesen

Anonym
Beiträge gesamt: 22827

10. Jun 2004, 20:28
Bewertung:

gelesen: 4857

Beitrag als Lesezeichen
irgendwie klappts immer noch nicht, da muß wohl noch woanders
der Wurm drin sein. trotzdem vielen vielen Dank für Deine tat-
kräftige unterstützung.

bis denn


fool

Formular / Array / auslesen

oesi50
  
Beiträge gesamt: 2315

10. Jun 2004, 20:58
Bewertung:

gelesen: 4857

Beitrag als Lesezeichen
ich habs mal getestet, bei mir läufts genau so:

<HTML>
<BODY>
<SCRIPT LANGUAGE="JavaScript" type="text/javascript"><!--
function validateTest(){
validity = true;
var wert = 0;
Abfrage = new Array(6);
Abfrage[0] = "name";
Abfrage[1] = "vorname";
Abfrage[2] = "strasse";
Abfrage[3] = "plz";
Abfrage[4] = "ortschaft";
Abfrage[5] = "telefon";
for (var count=0; count < 6; count++){
if (!check_empty(document.test[Abfrage[count]].value) ){
wert++;
}
}
if (wert>0){
validity = false; alert('Formular ist unvollstaendig');
}
else{
alert ("Vielen Dank für Ihre Anmeldung!.");
return validity;
}
}

function check_empty(text) {
return (text.length > 0); // gibt false zurück wenn leer
}
//-->
</SCRIPT>

<FORM METHOD=POST ACTION="" name="test">
<INPUT TYPE="text" NAME="name">
<INPUT TYPE="text" NAME="vorname">
<INPUT TYPE="text" NAME="strasse">
<INPUT TYPE="text" NAME="ortschaft">
<INPUT TYPE="text" NAME="plz">
<INPUT TYPE="text" NAME="telefon">
<INPUT TYPE="button" onclick="validateTest()">
</FORM>
</BODY>
</HTML>


Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)

(Dieser Beitrag wurde von oesi50 am 10. Jun 2004, 22:02 geändert)