script02.js

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

JS
72
字号
window.onload = initForms;function initForms() {	for (var i=0; i< document.forms.length; i++) {		document.forms[i].onsubmit = function() {return validForm();}	}}function validForm() {	var allGood = true;	var allTags = document.getElementsByTagName("*");	for (var i=0; i<allTags.length; i++) {		if (!validTag(allTags[i])) {			allGood = false;		}	}	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();			}			return false;		}		return true;				function validBasedOnClass(thisClass) {			var classBack = "";					switch(thisClass) {				case "":				case "invalid":					break;				case "imgURL":					if (allGood && !imgURL(thisTag.value)) classBack = "invalid ";				default:					classBack += thisClass;			}			return classBack;		}						function imgURL(newURL) {			var re = /^(file|http):\/\/\S+\/\S+\.(gif|jpg)$/i;			if (re.test(newURL)) {				document.getElementById("chgImg").src = newURL;				return true;			}			return false;		}				function invalidLabel(parentTag) {			if (parentTag.nodeName == "LABEL") {				parentTag.className += " invalid";			}		}	}}

⌨️ 快捷键说明

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