javascript - Submit button clears form instead of opening div -


i'm trying open div displays user entered in form onsubmit, submit button clears form, , can't figure out why. have use javascript display results. here's code:

<!doctype html> <meta name="viewport" content="width=device-width, initial-scale=1"> <html xmlns="http://www.w3.org/1999/xhtml"> <head>     <style>         h1 {             text-align: center;             color: blue;             font-family: 'courier';             margin: 30px;         }          h2 {             margin-top: 40px;             margin-left: 500px;             margin-bottom: 20px;         }          #divresults {             display: none;         }     </style> </head> <body>      <div id="customerform">         <form onsubmit="return showresults();">             <p>first name: <input type="text" id="fname" value="" required /></p>             <p>last name: <input type="text" id="lname" value="" required /></p>             <p>street address: <input type="text" id="address" value="" required /></p>             <p>city: <input type="text" id="city" value="" required /></p>             <p>state:                  <select id="states" required>                     <option id="statedefault" value="">please select state</option>                     <option value="alabama">alabama</option>                     <option value="alaska">alaska</option>                     <option value="arizona">arizona</option>                     <option value="arkansas">arkansas</option>                     <option value="california">california</option>                     <option value="colorado">colorado</option>                     <option value="connecticut">connecticut</option>                     <option value="delaware">delaware</option>                     <option value="florida">florida</option>                     <option value="georgia">georgia</option>                     <option value="hawaii">hawaii</option>                     <option value="idaho">idaho</option>                     <option value="illinois">illinois</option>                     <option value="indiana">indiana</option>                     <option value="iowa">iowa</option>                     <option value="kansas">kansas</option>                     <option value="kentucky">kentucky</option>                     <option value="louisiana">louisiana</option>                     <option value="maine">maine</option>                     <option value="maryland">maryland</option>                     <option value="massachusetts">massachusetts</option>                     <option value="michigan">michigan</option>                     <option value="minnesota">minnesota</option>                     <option value="mississippi">mississippi</option>                     <option value="missouri">missouri</option>                     <option value="montana">montana</option>                     <option value="nebraska">nebraska</option>                     <option value="nevada">nevada</option>                     <option value="new hampshire">new hampshire</option>                     <option value="new jersey">new jersey</option>                     <option value="new mexico">new mexico</option>                     <option value="new york">new york</option>                     <option value="north carolina">north carolina</option>                     <option value="north dakota">north dakota</option>                     <option value="ohio">ohio</option>                     <option value="oklahoma">oklahoma</option>                     <option value="oregon">oregon</option>                     <option value="pennsylvania">pennsylvania</option>                     <option value="rhode island">rhode island</option>                     <option value="south carolina">south carolina</option>                     <option value="south dakota">south dakota</option>                     <option value="tennessee">tennessee</option>                     <option value="texas">texas</option>                     <option value="utah">utah</option>                     <option value="vermont">vermont</option>                     <option value="virginia">virginia</option>                     <option value="washington">washington</option>                     <option value="west virginia">west virginia</option>                     <option value="wisconsin">wisconsin</option>                     <option value="wyoming">wyoming</option>                 </select>             </p>             <p>zip code: <input type="text" id="zip" required /></p>             <p>gender:                 <input type="radio" name="sex" value="male" checked />male                 <input type="radio" name="sex" value="female" />female             </p>             <input type="submit" id="submitbutton" />             <input type="reset" id="clear" value="clear" />         </form>     </div>     <br/>     <div id="divresults">         <h2>you entered: </h2>         <p>first name: <span id="first" class="results"></span></p>         <p>last name: <span id="last" class="results"></span></p>         <p>street address: <span id="street" class="results"></span></p>         <p>city: <span id="cityresult" class="results"></span></p>         <p>state: <span id="stateresult" class="results"></span></p>         <p>zip: <span id="zipcode" class="results"></span></p>         <p>gender: <span id="gen" class="results"></span></p>         <input type="button" id="formreset" value="go form" onclick="resetform();" />     </div>     <script>         function showresults() {             //store form values             var fst = document.getelementbyid("fname").value;             var lst = document.getelementbyid("lname").value;             var st = document.getelementbyid("address").value;             var cty = document.getelementbyid("city").value;             var ste = document.getelementbyid("states").value;             var zp = document.getelementbyid("zip").value;             var gndr = "male";             var genders = document.getelementsbyname("sex");             (var = 0; < 2; i++) {                 if (genders[i].checked) {                     gndr = radios[i].value;                     break;                 }             }             clearform();             //switch divs             document.getelementbyid("customerform").style.display = "none";             document.getelementbyid("divresults").style.display = "block";             //display results             document.getelementbyid("first").innerhtml = fst;             document.getelementbyid("last").innerhtml = lst;             document.getelementbyid("street").innerhtml = st;             document.getelementbyid("cityresult").innerhtml = cty;             document.getelementbyid("stateresult").innerhtml = ste;             document.getelementbyid("zipcode").innerhtml = zp;             document.getelementbyid("gen").innerhtml = gndr;             return false;         }          function clearform() {             document.getelementbyid("fname").value = "";             document.getelementbyid("lname").value = "";             document.getelementbyid("address").value = "";             document.getelementbyid("city").value = "";             document.getelementbyid("states").value = "";             document.getelementbyid("zip").value = "";         }          function resetform() {             document.getelementbyid("first").innerhtml = "";             document.getelementbyid("last").innerhtml = "";             document.getelementbyid("street").innerhtml = "";             document.getelementbyid("cityresult").innerhtml = "";             document.getelementbyid("stateresult").innerhtml = "";             document.getelementbyid("zipcode").innerhtml = "";             document.getelementbyid("gen").innerhtml = "";             document.getelementbyid("customerform").style.display = "block";             document.getelementbyid("divresults").style.display = "none";         }     </script> </body> </html> 

you have error uncaught referenceerror: radios not defined, in loop using radios[i].value should genders[i].value

for (var = 0; < 2; i++) {     if (genders[i].checked) {         gndr = genders[i].value;         break;     } } 

demo: fiddle


Comments

Popular posts from this blog

c# - Validate object ID from GET to POST -

node.js - Custom Model Validator SailsJS -

php - Find a regex to take part of Email -