Home Web Front-end JS Tutorial A JavaScript example for detecting form data

A JavaScript example for detecting form data

Jan 23, 2017 pm 05:32 PM
form

A JavaScript example for detecting form data. It is very simple and practical. Interested friends can take a look at

<!DOCTYPE html> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
<title>每天一个JavaScript实例-检测表单数据</title> 
<style> 
  [role="alert"]{ 
    background-color: #fcc; 
    font-weight: bold; 
    padding:5px; 
    border:1px dashed #000; 
  } 
  div{ 
    margin:10px 0; 
    padding:5px; 
    width:400px; 
    background-color: #fff; 
  } 
</style> 
  
<script> 
window.onload = function(){ 
  document.getElementById("thirdfield").onchange = validateField; 
  document.getElementById("firstfield").onblur = mandatoryField; 
  document.getElementById("testform").onsubmit = finalCheck; 
} 
function validateField(){ 
  removeAlert(); 
  if(!isNaN(parseFloat(this.value))){ 
    resetField(this); 
  }else{ 
    badField(this); 
    generateAlert("You entered an invalid value in Third Field. only numeric values such as 105 or 3.45 are allowed"); 
  } 
} 
function removeAlert(){ 
  var msg = document.getElementById("msg"); 
  if(msg){ 
    document.body.removeChild(msg); 
  } 
} 
function resetField(elem){ 
  elem.parentNode.setAttribute("style","background-color:#fff"); 
  var valid = elem.getAttribute("aria-invalid"); 
  if(valid) elem.removeAttribute("aria-invalid"); 
} 
function badField(elem){ 
  elem.parentNode.setAttribute("style","background-color#fee"); 
  elem.setAttribute("aria-invalid","true"); 
} 
function generateAlert(txt){ 
  var txtNd = document.createTextNode(txt); 
  msg = document.createElement("div"); 
  msg.setAttribute("role","alert"); 
  msg.setAttribute("id","msg"); 
  msg.setAttribute("class","alert"); 
  
  msg.appendChild(txtNd); 
  document.body.appendChild(msg); 
} 
  
function mandatoryField(){ 
  removeAlert(); 
  if(this.value.length > 0 ){ 
    resetField(this); 
  }else{ 
    badField(this); 
    generateAlert("You must enter a value into First Field"); 
  } 
} 
function finalCheck(){ 
  //console.log("aaa"); 
  removeAlert(); 
  
  var fields =document.querySelectorAll('input[aria-invalid="true"]'); 
  //var fields =document.querySelectorAll("input[aria-invalid='true']");//错误!!! 
  console.log(fields); 
  if(fields.length > 0){ 
    generateAlert("You have incorrect fields entries that must be fixed before you can submit this form"); 
    return false; 
  } 
} 
</script> 
  
</head> 
  
<body> 
<form id = "testform"> 
  <div> 
    <label for="firstfield">*first Field:</label><br /> 
    <input id="firstfield" name = "firstfield" type = "text" aria-required = "true" /> 
  </div> 
  
  <div> 
    <label for="secondfield">Second Field:</label><br /> 
    <input id="secondfield" name = "secondfield" type = "text" /> 
  </div> 
  
  <div> 
    <label for="thirdfield">Third Field(numeric):</label><br /> 
    <input id="thirdfield" name = "thirdfield" type = "text" /> 
  </div> 
  
  <div> 
    <label for="fourthfield">Fourth Field:</label><br /> 
    <input id="fourthfield" name = "fourthfield" type = "text" /> 
  </div> 
  
  <input type="submit" value = "Send Data" /> 
</form> 
  
</body> 
</html>
Copy after login

For more related articles about a JavaScript example for detecting form data, please pay attention to the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot Article Tags

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to implement page jump after PHP form submission How to implement page jump after PHP form submission Aug 12, 2023 am 11:30 AM

How to implement page jump after PHP form submission

How to handle user rights management in PHP forms How to handle user rights management in PHP forms Aug 10, 2023 pm 01:06 PM

How to handle user rights management in PHP forms

How to use JavaScript to implement real-time verification of the input box content of a form? How to use JavaScript to implement real-time verification of the input box content of a form? Oct 18, 2023 am 08:47 AM

How to use JavaScript to implement real-time verification of the input box content of a form?

How to use JavaScript to realize the automatic prompt function of the input box content of the form? How to use JavaScript to realize the automatic prompt function of the input box content of the form? Oct 20, 2023 pm 04:01 PM

How to use JavaScript to realize the automatic prompt function of the input box content of the form?

PHP form processing: form data query and filtering PHP form processing: form data query and filtering Aug 07, 2023 pm 06:17 PM

PHP form processing: form data query and filtering

How to use HTML, CSS and jQuery to realize the advanced function of automatic saving of forms How to use HTML, CSS and jQuery to realize the advanced function of automatic saving of forms Oct 28, 2023 am 08:20 AM

How to use HTML, CSS and jQuery to realize the advanced function of automatic saving of forms

Tips for using Laravel form classes: ways to improve efficiency Tips for using Laravel form classes: ways to improve efficiency Mar 11, 2024 pm 12:51 PM

Tips for using Laravel form classes: ways to improve efficiency

How to create a form with a floating prompt using HTML, CSS and jQuery How to create a form with a floating prompt using HTML, CSS and jQuery Oct 25, 2023 am 10:48 AM

How to create a form with a floating prompt using HTML, CSS and jQuery

See all articles