"Real software engineers work from 9 to 5, because that is the way the job is described in the formal spec. Working late would feel like using an undocumented external procedure."
1
2
3
4
5
6
7
8
9
| <form name="promo" action="/admin" method="post">
<input type="checkbox" name="delete1" value="1"> Verhaal 1
<input type="checkbox" name="delete2" value="2"> Verhaal 2
<input type="checkbox" name="delete3" value="3"> Verhaal 3
<input type="button" onclick="check();" value="Verzenden">
</form>
f = document.forms["promo"];
if ((f.elements["delete1"].checked) || (f.elements["delete2"].checked) || (f.elements["delete3"].checked)) { // verzend } |
1
2
3
4
5
6
7
| function check(form) { var el = form.elements['delete[]'], checked=false, i; if (i=el.length) while (i--) if (el[i].checked) { checked=true; break; } else checked = el.checked; if (!checked) alert('niets aangevinkt!'); return checked; } |
1
2
3
4
5
6
| <form action="/admin" method="post" onsubmit="return check(this)"> <input type="checkbox" name="delete[]" value="1"> Verhaal 1 <input type="checkbox" name="delete[]" value="2"> Verhaal 2 <input type="checkbox" name="delete[]" value="3"> Verhaal 3 <input type="submit" value="Verzenden"> </form> |
Intentionally left blank
@Crisp - ook bededankt voor jouw antwoord, maar ik heb nog een probleem: jouw script werkt niet als het form slechts 1 checkbox heeft - hij returned dan altijd "niets aangevinkt!". Ditzelfde probleem ben ik al vele keren in de search tegengekomen, maar heb er geen goed antwoord op kunnen vinden. Heb jij nog ideeen?
"Real software engineers work from 9 to 5, because that is the way the job is described in the formal spec. Working late would feel like using an undocumented external procedure."
Verwijderd
1
2
3
4
| if(!form.elements['delete[]'].length){
if(form.elements['delete[]'].checked)
checked++;
} |
is blijkbaar dus niet nodig
[ Voor 15% gewijzigd door Verwijderd op 10-08-2004 16:28 ]
1
2
3
4
5
6
7
8
| function check(form) { var el = form.elements['delete[]'], checked=false, i; if (i=el.length) { while (i--) if (el[i].checked) { checked=true; break; } } else checked = el.checked; if (!checked) alert('niets aangevinkt!'); return checked; } |
[ Voor 7% gewijzigd door crisp op 10-08-2004 16:21 ]
Intentionally left blank
"Real software engineers work from 9 to 5, because that is the way the job is described in the formal spec. Working late would feel like using an undocumented external procedure."
Zie dit:Reveller schreef op 10 augustus 2004 @ 16:26:
@Crisp - wat vaag?! Nu doet 'ie het inderdaad wel...maar als de code zelf gelijk blijft, en javascript geeft geen syntax error als je hem zonder haakjes uitvoert, waarom is de werking met en zonder haakjes dan toch verschillend? Vooralsnog bedankt hoor!
1
2
3
4
5
6
7
8
9
| if (bla) Stap1(); Stap2(); if (bla) { Stap1(); Stap2(); } |
In het eerste geval doet hij alleen Stap1 als bla true is, in het 2de geval doet hij beide stappen alleen als bla true is. In het voorbeeld van crisp gaat het om de else die nu bij een andere if 'hoort'.
[ Voor 7% gewijzigd door André op 10-08-2004 16:32 ]
ambiguiteit; de parser kon niet zien bij welke if nou de else hoorde en nam aan dat hij bij de 2e if hoordeReveller schreef op 10 augustus 2004 @ 16:26:
@Crisp - wat vaag?! Nu doet 'ie het inderdaad wel...maar als de code zelf gelijk blijft, en javascript geeft geen syntax error als je hem zonder haakjes uitvoert, waarom is de werking met en zonder haakjes dan toch verschillend? Vooralsnog bedankt hoor!
Intentionally left blank
"Real software engineers work from 9 to 5, because that is the way the job is described in the formal spec. Working late would feel like using an undocumented external procedure."
Intentionally left blank