JavaScript Validation for dynamic checkbox list -


i'm having issues getting validation work. need make sure textbox's populated , @ least 1 checkbox ticked. text fields easy enough, way checkbox's populated making hard. here snippet form looks like, there lot more after this. can change event on checkbox's or remove them?

<form id="orderform" action="#" method="get" onsubmit="return cdsubmitvalidate();">     <section id="selectcd">         <h2>select cds</h2> <div class='item'>         <span class='cdtitle'>a biography of rev. absalom dawe</span>         <span class='cdyear'>2001</span>         <span class='catdesc'>comedy</span>         <span class='cdprice'>11.70</span>         <span class='chosen'><input type='checkbox' name='cd[]' value='651' title='11.70' onclick='checkboxcheck(this)'/></span>     </div> <div class='item'>         <span class='cdtitle'>a bronx tale soundtrack</span>         <span class='cdyear'>2000</span>         <span class='catdesc'>death metal</span>         <span class='cdprice'>7.80</span>         <span class='chosen'><input type='checkbox' name='cd[]' value='652' title='7.80' onclick='checkboxcheck(this)'/></span>     </div> <div class='item'>         <span class='cdtitle'>a little deeper</span>         <span class='cdyear'>2000</span>         <span class='catdesc'>rap/r&b</span>         <span class='cdprice'>8.30</span>         <span class='chosen'><input type='checkbox' name='cd[]' value='653' title='8.30' onclick='checkboxcheck(this)'/></span>     </div>          <div id="retcustdetails" class="custdetails">             forename <input type="text" name="forename" id="forename" />             surname <input type="text" name="surname" id="surname" />         </div> <p><input type="submit" name="submit" value="order now!" id="sub1"/></p> 

tried far no avail.

function cdsubmitvalidate(){   var forename = document.getelementbyid('forename').value;   var surname = document.getelementbyid('surname').value;   var checkboxticked;    function checkboxcheck(elemname){      if (elemname.checked == true) {     checkboxticked = true;     }else if (elemname.checked == false) {     checkboxticked = false;     }   };    if (!forename || !surname || checkboxticked) {     alert("input criteria not met. please review , try again");     return false;   }  }; 

i think fix it, first moved checkboxcheck() function out of cdsubmitvalidate() function, checkboxticked. think problem callign function inside fuction console logged:

uncaught referenceerror: checkboxcheck not defined.

also in if statement condition

if (!forename || !surname || checkboxticked) 

i changed if (!forename || !surname || !checkboxticked)

codepen

var checkboxticked;    function cdsubmitvalidate() {    var forename = document.getelementbyid('forename').value,      surname = document.getelementbyid('surname').value;      if (!forename || !surname || !checkboxticked) {      alert("input criteria not met. please review , try again");      return false;    }    };    function checkboxcheck(elemname) {      if (elemname.checked == true) {      checkboxticked = true;    } else if (elemname.checked == false) {      checkboxticked = false;    }  };
<form id="orderform" action="#" method="get" onsubmit="return cdsubmitvalidate();">      <section id="selectcd">          <h2>select cds</h2>  <div class='item'>          <span class='cdtitle'>a biography of rev. absalom dawe</span>          <span class='cdyear'>2001</span>          <span class='catdesc'>comedy</span>          <span class='cdprice'>11.70</span>          <span class='chosen'><input type='checkbox' class="chkbx" name='cd[]' value='651' title='11.70' onclick='checkboxcheck(this)'/></span>      </div>  <div class='item'>          <span class='cdtitle'>a bronx tale soundtrack</span>          <span class='cdyear'>2000</span>          <span class='catdesc'>death metal</span>          <span class='cdprice'>7.80</span>          <span class='chosen'><input type='checkbox' class="chkbx" name='cd[]' value='652' title='7.80' onclick='checkboxcheck(this)'/></span>      </div>  <div class='item'>          <span class='cdtitle'>a little deeper</span>          <span class='cdyear'>2000</span>          <span class='catdesc'>rap/r&b</span>          <span class='cdprice'>8.30</span>          <span class='chosen'><input type='checkbox' class="chkbx" name='cd[]' value='653' title='8.30' onclick='checkboxcheck(this)'/></span>      </div>            <div id="retcustdetails" class="custdetails">              forename <input type="text" name="forename" id="forename" />              surname <input type="text" name="surname" id="surname" />          </div>  <p><input type="submit" name="submit" value="order now!" id="sub1"/></p>


Comments

Popular posts from this blog

how to insert data php javascript mysql with multiple array session 2 -

multithreading - Exception in Application constructor -

windows - CertCreateCertificateContext returns CRYPT_E_ASN1_BADTAG / 8009310b -