minulla on javascript taulukko jonka tulisi mielellään sisältää vain arvoja true, mutta jos tämä taulukko sisältääkin yhdenkään arvon false, niin miten sen voisi tarkistaa ja sen jälkeen estää scriptin suorituksen.
function all(f) { return function (array) { for (var i = 0; i < array.length; i++) { if (!f(array[i])) { return false } } return true } } var all_true = all(function (x) { return x }); // var array0 = [true,true,true,true,true,true]; var array1 = [true,true,true,false,true,true]; if (all_true(array0)) { alert("Tämä koodi ajetaan.") } if (all_true(array1)) { alert("Tätä ei.") }
Niin on tuo javasctipti utopiaa, että taidanpa vielä pyytää apua näin.
miten saan allaolevassa koodissa katsottua, että kaikki virhe arvot on false ja lähettäämään sen jälkeen lomakkeen eteenpäin. Muutenkin saa antaa parannusehdotuksia sillä niitä varmaan löytyy.
<script src="../prototype/prototype.js" type="text/javascript" language="JavaScript"></script> <script type="text/javascript"> function tarkistaLaakeKentat(){ // Haetaan paataulu nimisen taulun kaikki rivit. var rivit = $("paataulu").getElementsByTagName("TR"); var virhe = new Array(); virhe = false; // Lasketaan rivien maara var i, pituus = rivit.length; // Käydään rivi kerrallaan läpi silmukassa for(i = 1; i < pituus; ++i) { rivit[i].className = ""; rivit[i].cells[1].className = ""; rivit[i].cells[2].className = ""; rivit[i].cells[3].className = ""; tarkistaRivi(rivit[i]); } return true; } function tarkistaRivi(tr) { var rivin_numero = tr.rowIndex; var ensimmainen = ($("maara_" + rivin_numero).value); var arvo = ensimmainen.charAt(0); if(ensimmainen == ''){ virhe = false; } if(arvo == '-'){ $("maara_" + rivin_numero).className = "virheellinen"; virhe = true; } else { // var otettu_maara = parseInt($("maara_" + rivin_numero).value, 10); var otettu_maara = ($("maara_" + rivin_numero).value).replace(",", "."); if(isNaN(otettu_maara)){ otettu_maara = 0; } var otti = $("otti_" + rivin_numero).value; //var jaljella = parseInt($("jaljella_" + rivin_numero).value, 10); var jaljella = $("jaljella_" + rivin_numero).value; var erotus = (jaljella - otettu_maara); if(erotus < 0) { $("maara_" + rivin_numero).className = "virheellinen"; virhe = true; } else { if(otettu_maara <= 0) { // Tähän ei mitään ilmoitusta.. Ok } else { $("maara_" + rivin_numero).className = "oikein"; if(otti == '') { $("otti_" + rivin_numero).className = "virheellinen"; virhe = true; } else { $("otti_" + rivin_numero).className = "oikein"; virhe = false; } } } /* if(virhe != true){ document.forms.laaketiedot.toimenpide.value="tallenna"; document.forms.laaketiedot.submit(); } */ } } </script> <style type="text/css">
ja ei enää huolta. Homma pelaa taas
Aihe on jo aika vanha, joten et voi enää vastata siihen.