HTML code
<!DOCTYPE html> <html> <head> <title>Shopping Cart</title> <link rel="stylesheet" href="Lab11Form.css"> <script src="Lab11Forms.js"></script> </head> <body> <h1 >Shopping Cart</h1> <form action="someAction.cgi"> <h2>Ship To Information</h2> <p><label for="username">Name:</label> <input id="username" type="text" size="30"> </p> <p><label for="shipAddr1">Address</label> <input id="shipAddr1" type="text" size="50" > </p> <p> <label for="shipCity">City:</label> <input id="shipCity" type="text" size="30" > </p> <p> <label for="shipState">State: </label> <select id="shipState" > <option value="" selected>Choose a state</option> <option value="SC">South Carolina</option> <option value="GA">Georgia</option> <option value="NC">North Carolina</option> </select> </p> <p><label for="shipZip">Zip Code:</label><input id="zip" type="text" size="5" maxlength="5"> </p> <p><label for="shipOpt">Shipping Option:</label> <input id="shipNorm" type="radio" name="shipOpt">Normal <input id="shipNextDay" type="radio" name="shipOpt" value= "Next Day" onclick="nextDayRad()">Next Day </p> <p>Bill To Same As Ship To: <label for="BillToShipTo"><input type="checkbox" id="BillToShipTo" value="Yes" onclick="BillToCheck()"></label> </p> <h2>Bill To Information</h2> <p><label for="billAddr1">Address</label> <input id="billAddr1" type="text" size="50" > </p> <p> <label for="billCity">City:</label> <input id="billCity" type="text" size="30" > </p> <p> <label for="billState">State: </label> <select id="billState" > <option value="" selected>Choose a state</option> <option value="SC">South Carolina</option> <option value="GA">Georgia</option> <option value="NC">North Carolina</option> </select> </p> <p><label for="billZip">Zip Code:</label><input id="zip" type="text" size="5" maxlength="5"> </p> <p><input type="submit" value="Submit"> <input type="reset"></p> </form> </body> </html>
.js file code
/**
* @author szabos
*/
window.onload = initForms;
function initForms() {
for (var i=0; i< document.forms.length; i++) {
document.forms[i].onsubmit = validForm;
}
}
function nextDayRad(){
alert("next Day will be an extra Charge.");
}
function BillToCheck(){
document.getElementById("billAddr1").value = document.getElementById("shipAddr1").value
document.getElementById("billCity").value = document.getElementById("shipCity").value
document.getElementById("billState").value = document.getElementById("shipState").value
document.getElementById("billZip").value = document.getElementById("shipZip").value
}
function validForm() {
// Place validation code here
var allGood= true;
var allTags= document.getElementsByTagName("*")
for (var i=0; i<allTags.length; i++){
if (!validTag(allTags[i])) {
allGood= false;
}
}
return allGood;
}
function validTag(thisTag){
var outClass = "";
var allClasses= thisTag.className.spilit(" ");
for (var j=0; j<allClasses.length; j++){
outClass += vaildbasedOnClass (allClasses[j]) + " ";
}
thisTag.className= outClass;
if (outClass.indexOf("invalid") > -1){
thistag.focus();
if (thisTag.nodname == "INPUT"){
thisTag.select();
}
return false;
}
return true;
}
function validBasedOnClass(thisClass){
var classback= "";
switch(thisClass){
case "":
case "invalid":
break;
case "required":
if (allGood && thisTag.value == ""){
classBack= "Invalid ";
}
classBack += thisClass;
break;
default:
classBack += thisClass;
}
return classback;
}

New Topic/Question
Reply



MultiQuote






|