/ Forside/ Teknologi / Udvikling / Java Scripts / Spørgsmål
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Validering af felter - fase 2
Fra : Benna1979
Vist : 364 gange
185 point
Dato : 15-05-07 09:07

Ja, man kan vel lige så godt bare skrive "Hej Molokyle" ... Men hej til alle, der har lyst til at forsøge:

Jeg har en function, der validerer felter, men sidste variabel peger på en rulleliste, hvor den registrerer, at jeg vælger andet end værdien "Ikke valgt" - Er der nogen, der har en løsning? Se mit spørgsmål tidligere i dag, hvis I vil have hele historien.

---------------------------
Nu ser min kode sådan ud:

if(((document.forms[0].type.value=='Annonce') && (error==0)) || document.forms[0].indrykkesi.value=='Ikke valgt')
{      
alert('Du skal vælge indrykningsdato for annoncen!');
document.forms[0].indrykkesi.focus();
error = 1;
   return false;
}      

----------------------
Og min rulleliste ser sådan ud:

<td>Hvor skal annoncen indrykkes?</td>
<td id="indsenderSelect4"><select name="indrykkesi">
<option value="Ikke valgt">V&aelig;lg...</option>
<option value="Dagblad/Ugeavis">Dagblad/Ugeavis</option>
<option value="Foreningsblad">Foreningsblad</option>
<option value="Magasin/Katalog">Magasin/Katalog</option>
<option value="Andet">Andet</option>
</select>

 
 
Kommentar
Fra : Benna1979


Dato : 15-05-07 09:08

Og der skulle selvfølgelig stå "Hvor den ikkeregistrerer ..."

Kommentar
Fra : Benna1979


Dato : 15-05-07 09:08

Og så med et mellemrum, så Dansk Sprognævn også kan følge med ...

Kommentar
Fra : molokyle


Dato : 15-05-07 09:27

Skal du ikke bare teste på værdien af 'option'?

http://www.w3schools.com/htmldom/dom_obj_option.asp

..noget med:

select[0].option[0].value="..."
select[0].option[1].value="..."
select[0].option[2].value="..."
..osv.

Igen med en switch sætning ...hvor default er 'ikke valgt' ... dvs. =select[0].selected='';

Det ER altså laaaaang tid siden jeg har rodet med Javascript. Meget tid er gået med CSS.

</MOLOKYLE>



Kommentar
Fra : molokyle


Dato : 15-05-07 09:32

Øehh... den med 'default' må være noget i retning af:

select[0].selected=false;

Hvilket vil sige at INTET er valgt i rullemenuen.

..tror jeg nok

</MOLOKYLE>

Kommentar
Fra : molokyle


Dato : 15-05-07 09:37

Hvis du i stedet eller 'samtidig' med name='indrykkesi' laver en id='indrykkesi' for din select markør i HTML'en kan du jo adressere aktuelle select direkte:

select.indrykkesi.selected=false;

..så vidt jeg husker.

Det er så nemmere i koden at 'se' hvilken select markør, hvorhenne, i dokumentet man arbejder.

..men smag og behag

</MOLOKYLE>

Kommentar
Fra : molokyle


Dato : 15-05-07 09:39

..men skal du gennemløbe ALLE select objekter på en side, så er det naturligvis nemmere at tælle sig frem i en løkke.

Nok sludder for en sladder ...herfra

</MOLOKYLE>

Kommentar
Fra : Benna1979


Dato : 16-05-07 09:47

Hej Molokyle og andre

Jeg er sgu ikke helt tilfreds med den her endnu ... Jeg mener, at der burde være en nem løsning, hvor jeg bare skal finde den rigtige kode at skrive ind enten i rullelisteværdierne eller i selve scriptet - Og jeg vil gerne præmiere den rigtige kode, fordi jeg ikke selv kan finde ud af det ... Jeg er ikke superskarp i det her - Er der en, der kan skære det ud i pap?

Nu ser min kode sådan ud:

if(((document.forms[0].type.value=='Annonce') && (error==0)) || document.forms[0].indrykkesi.value=='Ikke valgt')
{
alert('Du skal vælge indrykningsdato for annoncen!');
document.forms[0].indrykkesi.focus();
error = 1;
return false;
}

----------------------
Og min rulleliste ser sådan ud:

<td>Hvor skal annoncen indrykkes?</td>
<td id="indsenderSelect4"><select name="indrykkesi">
<option value="Ikke valgt">V&aelig;lg...</option>
<option value="Dagblad/Ugeavis">Dagblad/Ugeavis</option>
<option value="Foreningsblad">Foreningsblad</option>
<option value="Magasin/Katalog">Magasin/Katalog</option>
<option value="Andet">Andet</option>
</select>


Kommentar
Fra : Kasper_Hviid


Dato : 17-05-07 10:07

Så vidt jeg forstår, vil du have scriptet til at reagere, hvis man vælger "Ikke valgt" i Drop Down dialogen. Ville det ikke være mere logisk at brugeren får en advarlsel når man trykker OK til slut? Så vil den jo også reagere, hvis man slet ikke har rørt Drop Down boksen.

Men her er hvad jeg tror du beder om:

Kode
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
<HTML>
<HEAD>
<TITLE>Linetester</TITLE>

<script language="javascript">
function tjekValue() {

   if(annonce.indrykkesi.value == "Ikke valgt") alert('Yo dude! You fucked up!');

}

</SCRIPT>

</HEAD>
<BODY>

<FORM name = "annonce">
<td>Hvor skal annoncen indrykkes?</td>
<select name="indrykkesi" onchange="tjekValue();">
<option value="Ikke valgt">V&aelig;lg...</option>
<option value="Dagblad/Ugeavis">Dagblad/Ugeavis</option>
<option value="Foreningsblad">Foreningsblad</option>
<option value="Magasin/Katalog">Magasin/Katalog</option>
<option value="Andet">Andet</option>
</select>
</FORM>

</BODY>
</HTML>


Kommentar
Fra : Benna1979


Dato : 17-05-07 10:26

Det troede jeg også umiddelbart, at du ville have ret i, og det er også det Molokyle har foreslået, men når jeg klikker "Ok", vil den ikke godtage, at rullelisten rent faktisk er blevet selected til en anden værdi end "ikke valgt" - Jeg bliver ved med at få alert-meddelelsen, selvom jeg har valgt "Andet" i rullelisten.



Annuller spørgsmålet
Fra : Benna1979


Dato : 22-05-07 12:21

Jeg har selv kodet det her om og har fundet en anden løsning - Jeg har ikke modtaget et gyldigt svar, og annullerer derfor dette spørgsmål

Du har følgende muligheder
Dette spørgsmål er blevet annulleret, det er derfor ikke muligt for at tilføje flere kommentarer.
Søg
Reklame
Statistik
Spørgsmål : 177428
Tips : 31962
Nyheder : 719565
Indlæg : 6407944
Brugere : 218878

Månedens bedste
Årets bedste
Sidste års bedste