Heim  >  Artikel  >  Web-Frontend  >  Beispiel für ein Ajax-Validierungsformular mit Eingabeaufforderungen

Beispiel für ein Ajax-Validierungsformular mit Eingabeaufforderungen

亚连
亚连Original
2018-05-25 10:00:151322Durchsuche

In diesem Artikel wird hauptsächlich das Ajax-Verifizierungsformular mit Eingabeaufforderungen vorgestellt, das die Funktion von Echtzeit-Eingabeaufforderungen für die Formulareingabe realisieren kann. Es ist sehr einfach und praktisch.

Das Beispiel In diesem Artikel wird das Bestätigungsformular für Ajax-Eingabeaufforderungen beschrieben. Teilen Sie es als Referenz mit allen. Die Details sind wie folgt:

Dies ist ein häufig verwendetes Ajax-Formularüberprüfungsprogramm. Es fragt Sie in Echtzeit, ob die von Ihnen eingegebenen Zeichen den Anforderungen entsprechen. Es ist in JavaScript implementiert und ist nicht mit anderen Framework-Codes vermischt, daher ist es praktischer.

Der Screenshot des Laufeffekts lautet wie folgt:

Der spezifische Code lautet wie folgt:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>带提示的Ajax验证表单</title>
<style type="text/css">
form {
  width:500px;
  border:1px solid #ccc;
}
fieldset {
  border:0;
  padding:10px;
  margin:10px;
  position:relative;
}
label {
  display:block;
  font:normal 12px/17px verdana;
}
input {width:160px;}
span.hint {
  font:normal 11px/14px verdana;
  background:#eee url(images/bg-span-hint-gray.gif) no-repeat top left;
  color:#444;
  border:1px solid #888;
  padding:5px 5px 5px 40px;
  width:250px;
  position:absolute;
  margin: -12px 0 0 14px;
  display:none;
}
fieldset.welldone span.hint {
  background:#9fd680 url(images/bg-span-hint-welldone.jpg) no-repeat top left;
  border-color:#749e5c;
  color:#000;
}
fieldset.kindagood span.hint {
  background:#ffffcc url(images/bg-span-hint-kindagood.jpg) no-repeat top left;
  border-color:#cc9933;
}
fieldset.welldone {
  background:transparent url(images/bg-fieldset-welldone.gif) no-repeat 194px 19px;
}
fieldset.kindagood {
  background:transparent url(images/bg-fieldset-kindagood.gif) no-repeat 194px 19px;
}
</style>
<script type="text/javascript">
function checkUsernameForLength(whatYouTyped) {
  var fieldset = whatYouTyped.parentNode;
  var txt = whatYouTyped.value;
  if (txt.length > 5) {
    fieldset.className = "welldone";
  }
  else {
    fieldset.className = "";
  }
}
function checkPassword(whatYouTyped) {
  var fieldset = whatYouTyped.parentNode;
  var txt = whatYouTyped.value;
  if (txt.length > 3 && txt.length < 8) {
    fieldset.className = "kindagood";
  } else if (txt.length > 7) {
    fieldset.className = "welldone";
  } else {
    fieldset.className = "";
  }
}
function checkEmail(whatYouTyped) {
  var fieldset = whatYouTyped.parentNode;
  var txt = whatYouTyped.value;
  if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(txt)) {
    fieldset.className = "welldone";
  } else {
    fieldset.className = "";
  }
}
function addLoadEvent(func) {
 var oldonload = window.onload;
 if (typeof window.onload != &#39;function&#39;) {
  window.onload = func;
 } else {
  window.onload = function() {
   oldonload();
   func();
  }
 }
}
function prepareInputsForHints() {
 var inputs = document.getElementsByTagName("input");
 for (var i=0; i<inputs.length; i++){
  inputs[i].onfocus = function () {
   this.parentNode.getElementsByTagName("span")[0].style.display = "inline";
  }
  inputs[i].onblur = function () {
   this.parentNode.getElementsByTagName("span")[0].style.display = "none";
  }
 }
}
addLoadEvent(prepareInputsForHints);
</script>
</head>
<body>
<form
  action="#"
  name="basicform"
  id="basicform" >
<fieldset>
  <label for="username">用户名:</label>
  <input
    type="text"
    id="username"
    onkeyup="checkUsernameForLength(this);" />
  <span class="hint">用户名最低6位哦</span>
</fieldset>
<fieldset>
  <label for="password">密码:</label>
  <input
    type="password"
    id="password"
    onkeyup="checkPassword(this);" />
  <span class="hint">密码需要4到8位哦</span>
</fieldset>
<fieldset>
  <label for="email">Email地址:</label>
  <input
    type="text"
    id="email"
    onkeyup="checkEmail(this);" />
  <span class="hint">You can enter your real address without worry - we don&#39;t spam!</span>
</fieldset>
</form>
</body>
</html>

Das Obige ist, was ich Für alle zusammengestellt, ich hoffe, dass es in Zukunft für alle hilfreich sein wird.

Verwandte Artikel:

Implementierung der Verknüpfungsanzeige von Daten in Dropdown-Boxen basierend auf Ajax

Detaillierte Erläuterung der Ajax-Synchronisation und Asynchronität in jquery

Ajax asynchroner Upload in jquery

Das obige ist der detaillierte Inhalt vonBeispiel für ein Ajax-Validierungsformular mit Eingabeaufforderungen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn