Skal virksomheder stå stærkere mod angreb og kunne udvikle sig, skal sikkerhed, drift og forretning tænkes sammen. Det er tanken bag Jysk IT’s ambition om at skabe en “sikker fremtid” for kunderne.
okay - det ser lidt advanceret ud, men det virker umiddelbart for mig: <script type="text/javascript"> function validate(frm) { var valid = false; var antal_udfyldte = 0; for (i=1;i<=4;i++) { frmelm = frm.elements["vare"+i+"udfyldt"]; if (frmelm.value == "true") { antal_udfyldte++; if (frm.elements["vare"+i+"nr"].value.match(/\S/) && frm.elements["vare"+i+"kolli"].value.match(/\S/) && frm.elements["vare"+i+"varenavn"].value.match(/\S/) && frm.elements["vare"+i+"ialt"].value.match(/\S/)) { valid = true; } else {alert("Du skal udfylde alle felterne i vare nr. "+i); }
} else if (frmelm.value == "false") {valid = false;;} else; } if (antal_udfyldte == 0) {valid = false;alert("Du skal udfylde mindst ét felt");} return valid; } function initForm(frm) { for (i=0;i<frm.length;i++) { if (frm.elements[i].type == "text") { frm.elements[i].onchange = function(e) { elm = (window.event) ? event.srcElement : e.target; hiddenelm = document.forms[0].elements[elm.name.substring(0,5)+"udfyldt"]; if (elm.value != '' && elm.value.match(/\S/)) { hiddenelm.value = "true" } else { hiddenelm.value = "false"; } } } } } </script>
<body onload="initForm(document.forms[0])">
Det kræver dog at du har et ekstra felt der hedder vare+nr+udfyldt, så din form ser nogenlunde sådan her ud: VARE NR 1: <input type="hidden" name="vare1udfyldt" /> <input type="text" name="vare1nr" /> <input type="text" name="vare1kolli" /> <input type="text" name="vare1varenavn" /> <input type="text" name="vare1ialt" /> <br /> VARENR 2: <input type="hidden" name="vare2udfyldt" /> <input type="text" name="vare2nr" /> <input type="text" name="vare2kolli" />
Synes godt om
Slettet bruger
09. juni 2004 - 08:54#4
hvordan kører jeg funktionen?
OnSubmit="Validate()"
i form koden???
Synes godt om
Slettet bruger
09. juni 2004 - 08:57#5
KOden skal i øvrigt også validere nogle andre felter:
kan de to koder smeltes sammen??
<script type="text/javascript">
function validering() { error = 0; if((document.forms[0].navn.value=='') && (error==0)) { alert('Tekstfeltet navn skal udfyldes!'); document.forms[0].navn.focus(); error = 1; } if((document.forms[0].adresse.value=='') && (error==0)) { alert('Tekstfeltet adresse skal udfyldes!'); document.forms[0].adresse.focus(); error = 1; } if((document.forms[0].postnr.value=='') && (error==0)) { alert('Tekstfeltet postnr skal udfyldes!'); document.forms[0].postnr.focus(); error = 1; } if((document.forms[0].city.value=='') && (error==0)) { alert('Tekstfeltet by skal udfyldes!'); document.forms[0].city.focus(); error = 1; } if((document.forms[0].leveringsadresse.value=='') && (error==0)) { alert('Tekstfeltet leveringsadresse skal udfyldes!'); document.forms[0].leveringsadresse.focus(); error = 1; } if((document.forms[0].telefon.value=='') && (error==0)) { alert('Tekstfeltet telefon skal udfyldes!'); document.forms[0].telefon.focus(); error = 1; } if((document.forms[0].mobil.value=='') && (error==0)) { alert('Tekstfeltet mobil skal udfyldes!'); document.forms[0].mobil.focus(); error = 1; } if((document.forms[0].leveringsdato.value=='') && (error==0)) { alert('Tekstfeltet leveringsdato skal udfyldes!'); document.forms[0].leveringsdato.focus(); error = 1; }
og jo de kan vel godt smeltes hurtigt sammen: function validate(frm) { var valid = false; var antal_udfyldte = 0; for (i=1;i<=4;i++) { frmelm = frm.elements["vare"+i+"udfyldt"]; if (frmelm.value == "true") { antal_udfyldte++; if (frm.elements["vare"+i+"nr"].value.match(/\S/) && frm.elements["vare"+i+"kolli"].value.match(/\S/) && frm.elements["vare"+i+"varenavn"].value.match(/\S/) && frm.elements["vare"+i+"ialt"].value.match(/\S/)) { valid = true; } else {alert("Du skal udfylde alle felterne i vare nr. "+i); }
} else if (frmelm.value == "false") {valid = false;;} else; } if (antal_udfyldte == 0) {valid = false;alert("Du skal udfylde mindst ét felt");} error = 0; if((document.forms[0].navn.value=='') && (error==0)) { alert('Tekstfeltet navn skal udfyldes!'); document.forms[0].navn.focus(); error = 1; } if((document.forms[0].adresse.value=='') && (error==0)) { alert('Tekstfeltet adresse skal udfyldes!'); document.forms[0].adresse.focus(); error = 1; } if((document.forms[0].postnr.value=='') && (error==0)) { alert('Tekstfeltet postnr skal udfyldes!'); document.forms[0].postnr.focus(); error = 1; } if((document.forms[0].city.value=='') && (error==0)) { alert('Tekstfeltet by skal udfyldes!'); document.forms[0].city.focus(); error = 1; } if((document.forms[0].leveringsadresse.value=='') && (error==0)) { alert('Tekstfeltet leveringsadresse skal udfyldes!'); document.forms[0].leveringsadresse.focus(); error = 1; } if((document.forms[0].telefon.value=='') && (error==0)) { alert('Tekstfeltet telefon skal udfyldes!'); document.forms[0].telefon.focus(); error = 1; } if((document.forms[0].mobil.value=='') && (error==0)) { alert('Tekstfeltet mobil skal udfyldes!'); document.forms[0].mobil.focus(); error = 1; } if((document.forms[0].leveringsdato.value=='') && (error==0)) { alert('Tekstfeltet leveringsdato skal udfyldes!'); document.forms[0].leveringsdato.focus(); error = 1; }
næ, det virker ikke lige - så du kan bare erstatte det med det her (hvilket også er en bedre løsning): function validate(frm) { var valid = false; var antal_udfyldte = 0; for (i=1;i<=4;i++) { frmelm = frm.elements["vare"+i+"udfyldt"]; if (frmelm.value == "true") { antal_udfyldte++; if (frm.elements["vare"+i+"nr"].value.match(/\S/) && frm.elements["vare"+i+"kolli"].value.match(/\S/) && frm.elements["vare"+i+"varenavn"].value.match(/\S/) && frm.elements["vare"+i+"ialt"].value.match(/\S/)) { valid = true; } else {alert("Du skal udfylde alle felterne i vare nr. "+i); }
} else if (frmelm.value == "false") {valid = false;;} else; } if (antal_udfyldte == 0) {valid = false;alert("Du skal udfylde mindst ét felt");} if((document.forms[0].navn.value=='') && valid) { alert('Tekstfeltet navn skal udfyldes!'); document.forms[0].navn.focus(); } if((document.forms[0].adresse.value=='') && valid) { alert('Tekstfeltet adresse skal udfyldes!'); document.forms[0].adresse.focus(); } if((document.forms[0].postnr.value=='') && valid) { alert('Tekstfeltet postnr skal udfyldes!'); document.forms[0].postnr.focus(); } if((document.forms[0].city.value=='') && valid) { alert('Tekstfeltet by skal udfyldes!'); document.forms[0].city.focus(); } if((document.forms[0].leveringsadresse.value=='') && valid) { alert('Tekstfeltet leveringsadresse skal udfyldes!'); document.forms[0].leveringsadresse.focus(); } if((document.forms[0].telefon.value=='') && valid) { alert('Tekstfeltet telefon skal udfyldes!'); document.forms[0].telefon.focus(); } if((document.forms[0].mobil.value=='') && valid) { alert('Tekstfeltet mobil skal udfyldes!'); document.forms[0].mobil.focus(); } if((document.forms[0].leveringsdato.value=='') && valid) { alert('Tekstfeltet leveringsdato skal udfyldes!'); document.forms[0].leveringsdato.focus(); } return valid }
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.