Advertisement
Guest User

Untitled

a guest
Dec 5th, 2019
104
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.85 KB | None | 0 0
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <script>
  5. function validateForm() {
  6. var firstname = document.forms["myForm"]["firstname"].value;
  7. var lastname = document.forms["myForm"]["lastname"].value;
  8. //var gender = document.forms["myForm"]["gender"].value;
  9. var age = document.forms["myForm"]["age"].value;
  10. var dobFilled = false // this is a flag for later on in the date checking process
  11.  
  12. if (firstname == "") {
  13. alert("First name must be filled out.");
  14. setCaretPosition(boxfirstname, 0)
  15. return false;
  16. } else if (lastname == "") {
  17. alert("Last name must be filled out.");
  18. setCaretPosition(boxlastname, 0)
  19. return false;
  20. } else if (isNaN(age)) {
  21. alert("Age must be a number.");
  22. setCaretPosition(boxage, 0)
  23. return false;
  24. } else if (age == "") {
  25. alert("Age must be filled out.");
  26. setCaretPosition(boxage, 0)
  27. return false;
  28. } else if (age > 150) {
  29. alert("You are too old.");
  30. setCaretPosition(boxage, 0)
  31. return false;
  32. } else if (age < 12) {
  33. alert("You are too young.");
  34. setCaretPosition(boxage, 0)
  35. return false;
  36. }
  37. dobFilled = agetest() // gets a value from the function
  38. console.log(dobFilled)
  39. if (dobFilled = true){ // function should return false if user error occurs, instead
  40. alert("Submission successful.") // this alert does not fire, problem with function?
  41. }
  42. }
  43. function required(inputtx)
  44. {
  45. if (inputtx.value.length == 0) {
  46. alert("Birthdate must be filled out.");
  47. return false;
  48. }
  49. return true;
  50. }
  51.  
  52. function setCaretPosition(ctrl, pos) {
  53. if (ctrl.setSelectionRange) {
  54. ctrl.focus();
  55. ctrl.setSelectionRange(pos, pos);
  56. }
  57. }
  58. function agetest(){ //have tested this function independently of the final webpage. seems to work???
  59. var ageInMS = 0
  60. var ageEstimate = 0
  61. var ageInput = document.getElementById('boxage').value
  62.  
  63. var birthdate = document.getElementById('birthdate').value
  64. var dateRegis = document.getElementById('datereg').value
  65. console.log(ageInput, birthdate, dateRegis) //the most useful function
  66. var birthdateInMS = Date.parse(birthdate)
  67. var dateRegisInMS = Date.parse(dateRegis)
  68. console.log(birthdateInMS, dateRegisInMS)
  69. ageInMS = (dateRegisInMS - birthdateInMS)
  70. ageEstimate = parseInt(Math.floor(ageInMS/31536000000))
  71. console.log(ageInMS, ageEstimate)
  72. if (ageEstimate != ageInput){
  73. alert("At least one date is incorrectly filled in.");
  74. setCaretPosition(boxage, 0)
  75. return false;
  76. }
  77. }
  78. </script>
  79. </head>
  80.  
  81. <body>
  82.  
  83. <h1>PORTFOLIO 1</h1>
  84. <form name="myForm" onsubmit="return validateForm()" method="post"> <!-- action="successfulsubmissionwebpage.html"> add a separate page called the quotes in the same folder as file. -->
  85. First name:<br>
  86. <input type="text" id="boxfirstname" name="firstname"><br>
  87. Last name:<br>
  88. <input type="text" id="boxlastname" name="lastname"><br><br>
  89. <input type="radio" name="gender" value="male" checked> Male<br>
  90. <input type="radio" name="gender" value="female"> Female<br>
  91. <input type="radio" name="gender" value="other"> Other<br><br>
  92. Age: <br>
  93. <input type="text" id ="boxage" name="age" size="2" value=""><br><br>
  94. Date of Birth: <br>
  95. <input type="date" id="birthdate" size="2"><br>
  96. Date Registered: <br>
  97. <input type="date" id="datereg" size="2"> <br>
  98. <br><br>
  99. Course:<br>
  100. <select name="course">
  101. <option value="databases">Databases</option>
  102. <option value="websites">Websites</option>
  103. <option value="networks">Networks</option>
  104. </select>
  105. <br><br>
  106.  
  107. <input type="submit" value="Submit">
  108. </form>
  109. <p>This is a paragraph.</p>
  110.  
  111. </body>
  112. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement