roadyMedlem sedan jan. 2002473 inlägg Jag skall göra som så att jag skall titta efter så man verkligen har fyllt i alla textrutor och klickat på alla checkboxes innan man kan komma vidare...
Fick lite hjälp med det här:
<script language="JavaScript">
function check()
{
if (document.blankett.headFnamn.value=="" || document.blankett.headEnamn.value=="" || document.blankett.headSkola.value==""
|| document.blankett.nr_01.checked || document.blankett.nr_02.checked || document.blankett.nr_03.checked
|| document.blankett.nr_04.checked || document.blankett.nr_07.value==""
|| document.blankett.nr_08.value=="" || document.blankett.nr_09.value=="")
{
alert("Något eller några fält var ej ifyllda, fyll i alla fält och försök igen.");
return false;
}
else
{
return true;
}
}
</script>
Detta funkar utmärkt på textfälten döpta till:
headFnamn, headEnamn, headSkola, nr_07, nr_08 och nr_09
Men de som är checkboxes känner den inte ens av?
nr_01, nr_02, nr_03 och nr_04
*snyft* Vad gör jag för fel?
@ndersMedlem sedan juni 200032 969 inlägg Ska du inte kontrollera om checkboxarna inte är markerade?
document.blankett.nr_01.checked == false
mvh,
roadyMedlem sedan jan. 2002473 inlägg Det stämmer att jag skall kolla ifall checkboxen är markerad...
Testade det du gav mig men det funkar ändå inte :(
roadyMedlem sedan jan. 2002473 inlägg Jag har sökt en massa och märkt att ifall man har flera checkboxar med samma "namn" så måste man ge ett id ex.
document.blankett.nr_01[0].checked == false
document.blankett.nr_01[1].checked == false
document.blankett.nr_01[2].checked == false
Man skall även kunna loppa igenom för att slippa skriva allt, men jag får det inte riktigt att funka!
<script language="JavaScript">
function check()
{
check=false;
for(n=0;n<document.testform.nr_01.length;n++)
if (document.testform.nr_01[n].checked)
check=true;
{
return true;
}
else
{
alert("Något eller några fält var ej ifyllda, fyll i alla fält och försök igen.");
return false;
}
}
</script>
Men sedan tänkte jag eftersom jag skall kolla flera olika checkboxar och några textfält. Finns det inget sätt att göra detta genom loopar och id???
kanske document.testform*.nr_01[n].checked*
måste verkligen få detta att funka, tiden börjar rinna ut :x
JojoxxMedlem sedan juni 20004 308 inlägg var check=true;
for(n=0;n<document.testform.nr_01.length;n++){
if(!document.testform.nr_01[n].checked){ check=false; }
}
if(!check){
alert("Något eller några fält var ej ifyllda, fyll i alla fält och försök igen.");
}
return check;
roadyMedlem sedan jan. 2002473 inlägg gaaaa x(
Jag har hållt på sen i fredags utan framsteg, testade även det sista som du skickade Jojoxx utan att det funkar :(
<script language="JavaScript">
function check()
{
var check=true;
for(n=0;n<document.blankett.nr_01.length;n++){
if(!document.blankett.nr_01[n].checked){ check=false; }
}
if(!check){
alert("Något eller några fält var ej ifyllda, fyll i alla fält och försök igen.");
}
return check;
}
</script>
Hur jag än trycker så får jag "alert" hela tiden!
Men kan man verkligen kolla igenom radiobuttons på det sättet eftersom det skall bara vara en som skall vara markerad och inte alla?
roadyMedlem sedan jan. 2002473 inlägg Jag har sökt och sökt på det stora internetet och det stora webforumet men kan ändå inte få det att funka *snyft*
Problemet är funktionerna:
isNr01, isNr02, isNr03, isNr04 och isNr06
Det är radiobuttons där det finns 5 val på varje, hur får jag ihop det här???
<script language="JavaScript">
<!-- Begin function resetform() {document.forms[0].elements[0]=="";}
function check() {if ( isFnamn() && isEnamn() && isSkola() && isNr01() && isNr02() && isNr03() && isNr04() && isNr06() && isNr07() && isNr08() && isNr09() )
if (confirm("\n You are about to e-mail your submission. \n\nYES to submit. NO to abort.")){alert("\nYour submission will now be sent. \n\n Use the Return Button once the submission is complete to return to my home page.\n\n\n Thank you for joining my mailing list!");
return true;
}
else
{
alert("\n You have chosen to abort the submission.");
return false
}
else
return false;
}
function isFnamn() {
if (document.forms[0].elements[0].value == "") {
alert ("\n Du har glömt att fylla i ditt Förnamn!")
document.forms[0].elements[0].focus();
return false;
}
return true;
}
function isEnamn() {
if (document.forms[0].elements[1].value == "") {
alert ("\n Du har glömt att fylla i ditt Efternamn!")
document.forms[0].elements[1].focus();
return false;
}
return true;
}
function isSkola() {
if (document.forms[0].elements[2].value == "") {
alert ("\n Du har glömt att fylla i vilken Skola du jobbar på!")
document.forms[0].elements[2].focus();
return false;
}
return true;
}
function isNr01() {
if (document.forms[0].elements[2].value == "") {
alert ("\n Du har glömt att fylla i fråga 1")
document.forms[0].elements[2].focus();
return false;
}
return true;
}
function isNr02() {
if (document.forms[0].elements[2].value == "") {
alert ("\n Du har glömt att fylla i fråga 2")
document.forms[0].elements[2].focus();
return false;
}
return true;
}
function isNr03() {
if (document.forms[0].elements[5].value == "") {
alert ("\n Du har glömt att fylla i fråga 3")
document.forms[0].elements[5].focus();
return false;
}
return true;
}
function isNr04() {
if (document.forms[0].elements[6].value == "") {
alert ("\n Du har glömt att fylla i fråga 4")
document.forms[0].elements[6].focus();
return false;
}
return true;
}
function isNr06() {
if (document.forms[0].elements[7].value == "") {
alert ("\n Du har glömt att fylla i fråga 6")
document.forms[0].elements[7].focus();
return false;
}
return true;
}
function isNr07() {
if (document.forms[0].elements[8].value == "") {
alert ("\n Du har glömt att fylla i fråga 7")
document.forms[0].elements[8].focus();
return false;
}
return true;
}
function isNr08() {
if (document.forms[0].elements[8].value == "") {
alert ("\n Du har glömt att fylla i fråga 8")
document.forms[0].elements[8].focus();
return false;
}
return true;
}
function isNr09() {
if (document.forms[0].elements[8].value == "") {
alert ("\n Du har glömt att fylla i fråga 9")
document.forms[0].elements[8].focus();
return false;
}
return true;
}
// End -->
</script>
JojoxxMedlem sedan juni 20004 308 inlägg Först sa du att det var checkboxar, nu är det radio-rutor. Det är 2 olika saker. Om du har radio-rutor med 5 val i varje grupp. Skall det räcka med att man markerar en, eller måste man markera någon speciell? Radio-rutor kan du bara markera max 1 i varje grupp, det är det som utmärker en radio-ruta.
roadyMedlem sedan jan. 2002473 inlägg oj :r
Det stämmer ju...
Men varför får jag det ändå inte att fungera?
<script language="JavaScript">
function radiokontroll(){
if ((document.blankett.nr_01.checked) && (document.blankett.nr_02.checked) && (document.blankett.nr_03.checked) && (document.blankett.nr_04.checked) && (document.blankett.nr_06.checked))
{
return ;
}
else
{
alert("Någon eller några radioknappar var ej ifyllda, fyll i varje fråga och försök igen.");
return false;
}
}
function textkontroll(){
if(document.blankett.headFnamn.value==''||document.blankett.headEnamn.value==''||document.blankett.headSkola.value==''||document.blankett.nr_07.value==''||document.blankett.nr_08.value==''||document.blankett.nr_09.value=='')
{
alert("Du måste fylla i alla textrutorna !");
return false;
}
else
{
return true;
}
}
</script>
den säger hela tiden att jag måste kryssa i???
JojoxxMedlem sedan juni 20004 308 inlägg Du har fortfarande inte svarat på frågan. Måste man markera en speciell radio-ruta i varje grupp, eller räcker det om en ruta, vilken som hellst är markerad?
roadyMedlem sedan jan. 2002473 inlägg Nä, det räcker att en radiobutton i varje grupp är markerad!!!
JojoxxMedlem sedan juni 20004 308 inlägg function radiokontroll(){
checked=false;
for(n=0;n<document.blankett.nr_01.length;n++){
if(document.blankett.nr_01[n].checked){ checked=true; }
}
if(!checked){ alert('Du måste markera ett val i nr_01'); return false; }
checked=false;
for(n=0;n<document.blankett.nr_02.length;n++){
if(document.blankett.nr_02[n].checked){ checked=true; }
}
if(!checked){ alert('Du måste markera ett val i nr_02'); return false; }
return true;
}
roadyMedlem sedan jan. 2002473 inlägg *buhu*
Jag måste nog börja plugga Javascript verkar det som :(
Jag testade det du gav mig, den tittar bara på radiogruppen nr_01, sedan när den skall ta nästa så verkar den inte bry sig
function radiokontroll(){
var checked=false;
for(n=0;n<document.blankett.nr_01.length;n++){
if(document.blankett.nr_01[n].checked){ checked=true; }
}
if(!checked){ alert('Du måste markera ett val i nr_01'); return false; }
for(n=0;n<document.blankett.nr_02.length;n++){
if(document.blankett.nr_02[n].checked){ checked=true; }
}
if(!checked){ alert('Du måste markera ett val i nr_02'); return false; }
for(n=0;n<document.blankett.nr_03.length;n++){
if(document.blankett.nr_03[n].checked){ checked=true; }
}
if(!checked){ alert('Du måste markera ett val i nr_02'); return false; }
for(n=0;n<document.blankett.nr_04.length;n++){
if(document.blankett.nr_04[n].checked){ checked=true; }
}
if(!checked){ alert('Du måste markera ett val i nr_02'); return false; }
for(n=0;n<document.blankett.nr_06.length;n++){
if(document.blankett.nr_06[n].checked){ checked=true; }
}
if(!checked){ alert('Du måste markera ett val i nr_02'); return false; }
return true;
}
roadyMedlem sedan jan. 2002473 inlägg Det hela löste sig,
fick skriva långa och/eller, mycket script men det funkar ;)
JojoxxMedlem sedan juni 20004 308 inlägg Titta på mitt exempel igen. Du återställer inte checked till false efter varje "loop-koll".