script06.js

来自「图灵程序设计丛书 JavaScript基础教程源代码」· JavaScript 代码 · 共 68 行

JS
68
字号
window.onload = initForms;function initForms() {	for (var i=0; i< document.forms.length; i++) {		document.forms[i].onsubmit = function() {return validForm();}	}}function validForm() {	var allTags = document.getElementsByTagName("*");	for (var i=0; i<allTags.length; i++) {		validTag(allTags[i]);	}	return false;	function validTag(thisTag) {		var outClass = "";		var allClasses = thisTag.className.split(" ");			for (var j=0; j<allClasses.length; j++) {			outClass += validBasedOnClass(allClasses[j]) + " ";		}			thisTag.className = outClass;			if (outClass.indexOf("invalid") > -1) {			invalidLabel(thisTag.parentNode);			thisTag.focus();			if (thisTag.nodeName == "INPUT") {				thisTag.select();			}		}				function validBasedOnClass(thisClass) {			var classBack = "";					switch(thisClass) {				case "":				case "invalid":					break;				case "phone":					if (!validPhone(thisTag.value)) classBack = "invalid ";				default:					classBack += thisClass;			}			return classBack;		}				function validPhone(phoneNum) {			var re = /^\(?(\d{3})\)?[\.\-\/ ]?(\d{3})[\.\-\/ ]?(\d{4})$/;			var phoneArray = re.exec(phoneNum);			if (phoneArray) {				document.getElementById("phoneField").value = "(" + phoneArray[1] + ") " + phoneArray[2] + "-" + phoneArray[3];				return true;			}			return false;		}				function invalidLabel(parentTag) {			if (parentTag.nodeName == "LABEL") {				parentTag.className += " invalid";			}		}	}}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?