webForumDet fria alternativet

Kolla radio innan submit...

11 svar · 334 visningar · startad av skyman

skymanMedlem sedan juli 20012 450 inlägg
#1

Jag har denna lilla fina kod:

function kolla1()
{
if (document.form2.radio_boka1.checked == false) {
alert('Välj resa.');
return false;
}
else{return true}
}

Samt denna i sumbit-knappen:onsubmit="return kolla1();"
Något är fel... Kan någon se det? :q

------------------
/A.S

skymanMedlem sedan juli 20012 450 inlägg
#2

Kom igen nu... :)
Gnugga geni-knölarna!!!

------------------
/A.S

skymanMedlem sedan juli 20012 450 inlägg
#3

Jag ger inte upp så lätt...
Kom igen! :)

------------------
/A.S

JojoxxMedlem sedan juni 20004 308 inlägg
#4

2 saker;

* onSubmit skall användas i formulärs-taggen <form>, inte i knappen.

* fältet "radio_boka1" skall enligt ditt exempel vara en checkbox och inte en radio-knapp som namnet antyder. Vet inte vad du använder nu.

------------------
/ J

skymanMedlem sedan juli 20012 450 inlägg
#5

Tack för svar j.
radio_boka1 är en radio-button.
Jag ändrade till:
function kolla1(){
if(document.form2.radio_boka1.checked==true){
return true; /r glömde ;
}
else{
alert('Välj resa.');
return false;
}
}

Men då får jag alltid upp meddelandet, även fast radio_boka1 är checked.

------------------
/A.S

[Redigerat av skyman den 09 jan 2002]

JojoxxMedlem sedan juni 20004 308 inlägg
#6

Radio-knappar kollas inte på det sättet eftersom du oftast har flera radio-knappar med samma namn, och då skulle det vara lite svårt att veta vilken som är markerad. Istället kollar man den som en array. Har du 2 radio-knappar med namned radio_boka1 i formuläret form2 kollar du den första med;

document.form2.radio_boka1[0].checked

den andra kollar du med;

document.form2.radio_boka1[1].checked

osv.

------------------
/ J

skymanMedlem sedan juli 20012 450 inlägg
#7

Ok, vad dumt... :l
Jag ska endast kolla om någon av radio_boka1 är ikryssad, vilken spelar ingen roll.
Måste man fortfarande göra som du beskrev ovan?

------------------
/A.S

JojoxxMedlem sedan juni 20004 308 inlägg
#8

Då får du loopa igenom den och kolla alla;

boka=false;
for (n=0; n<document.form2.radio_boka1.length; n++){
if(document.form2.radio_boka1[n].checked);
boka=true;
}
if(boka) ...

------------------
/ J

[Redigerat av Jojoxx den 10 jan 2002]

skymanMedlem sedan juli 20012 450 inlägg
#9

Ok, ska prova det.
Tack :)

------------------
/A.S

skymanMedlem sedan juli 20012 450 inlägg
#10

Funkar mycket bra.
Tack Jojoxx.

------------------
/A.S

GuppenMedlem sedan jan. 2002304 inlägg
#11

Möjligt att du redan löst ditt problem... Jag reagerade dock över andra saker än de du fått svar på.
Min lärare (jag läser, och lär mig just nu JavaScript) poängterar alltid hur viktigt det är med citationstecken... och att då man har citationstecken använda '(namn?) innanför citationstecknen om de behövs igen (då citationstecken inte kan användas flera gånger i ett uttryck). I din kod har du inga citationstecken med så väl '... (va tusan heter de?? *ler*).

alert('Välj resa.');
Antagligen ligger problemet nån helt annanstans *skratt* men man har väl alltid rätt att reagera.

/S. :e

------------------
*Om man aldrig frågar lär man inte få veta "Guppen-whit thousands of questions"*

JojoxxMedlem sedan juni 20004 308 inlägg
#12

Välkommen till wF.

då citationstecken inte kan användas flera gånger i ett uttryck

Du kan hälsa din lärare att det går alldeles utmärkt, men du kan av förklarlig orsak inta bara skriva det rakt upp och ner i en tilldelning när du använder " som avgränsare. Här är 2 varianter;

var text = "Detta är en text med \" i mitten";

Här använder vi backslash för att tala om att nästa tecken är ett specicaltecken som skall avkodas. Du kan även ' som avgränsare, men då behöver/kan du inte använda dessa special-tecken;

var text = 'Detta är en text med " i mitten';

------------------
/ J

[Redigerat av Jojoxx den 17 jan 2002]

129 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)