亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? validation-framework.js

?? 用java編寫的程序
?? JS
?? 第 1 頁 / 共 3 頁
字號:
			lang = navigator.userLanguage.toLowerCase();
	}
	// get the language
	if (typeof ValidationErrorString[lang] != 'object') {
		stringResource = ValidationErrorString['zh-cn'];
	} else {
		stringResource = ValidationErrorString[lang];
	}
	var dep = depend.getName().toLowerCase();
	var retStr = stringResource[dep];
	//If the specified depend not defined, use the default error string.
	if (typeof retStr != 'string') {
		retStr = stringResource["default"];
		retStr = retStr.replace("{0}", field.getDisplayName());
		return retStr;
	}
	retStr = retStr.replace("{0}", field.getDisplayName());
	if (dep == "minlength" || dep == "maxlength" || dep == "date" ) {
		retStr = retStr.replace("{1}", depend.getParams()[0]);
	} else if ( dep == "equalsfield") {
		var eqField = field.getForm().findField(depend.getParams()[0]);
		if (eqField == null) {
			ValidationFramework.exception("找不到名稱為[" + depend.getParams()[0]+"]的域,請檢查xml配置文件。");
			retStr = "<<配置錯誤>>";
		} else {
			retStr = retStr.replace("{1}", field.getForm().findField(depend.getParams()[0]).getDisplayName());
		}
	} else if (dep == "integerrange" || dep == "doublerange") {
		retStr = retStr.replace("{1}", depend.getParams()[0]);
		retStr = retStr.replace("{2}", depend.getParams()[1]);
	}

	return retStr;
}

ValidationFramework.getWebFormFieldObj = function(field) {
	var obj = null;
	if (ValidationFramework._currentForm != null) {
		var formObj = document.getElementById(ValidationFramework._currentForm.getId());
		obj = formObj[field.getName()];
		if (typeof(obj) == 'undefined') {
			obj = null;
		}
	}
	if (obj == null) {
		ValidationFramework.exception("在配置文件中有需要驗證的域,但在實際網頁表單中不存在:[name=" + field.getName() + "]。");
	}
	return obj;
}

ValidationFramework.exception = function(str) {
	var ex = "JavaScript Validation Framework 運行時錯誤:\n\n";
	ex += str;
	ex += "\n\n\n任何運行錯誤都會導致該域驗證失敗。";
	alert(ex);
}
ValidationFramework.getIntegerValue = function(val) {
	var intvalue = parseInt(val);
	if (isNaN(intvalue)) {
		ValidationFramework.exception("期待一個整型參數。");
	}
	return intvalue;
}
ValidationFramework.getFloatValue = function(val) {
	var floatvalue = parseFloat(val);
	if (isNaN(floatvalue)) {
		ValidationFramework.exception("期待一個浮點型參數。");
	}
	return floatvalue;
}
/**
 * FormFactory
 * Build virture form from Html Form.
 */
function FormFactory() {}
FormFactory.getFormFromDOM = function(dom) {
	var form = new ValidationForm();
	form.setId(dom.getAttribute("id"));
	form.setShowError(dom.getAttribute("show-error"));
	form.setOnFail(dom.getAttribute("onfail"));
	form.setShowType(dom.getAttribute("show-type"));

	if (dom.hasChildNodes()) {
		var f = dom.childNodes;
		for (var i = 0; i < f.length; i++) {
			if (f.item(i) == null||typeof(f.item(i).tagName) == 'undefined' || f.item(i).tagName != 'field') {
				continue;
			}
			var field = FieldFactory.getFieldFromDOM(f.item(i));
			if (field != null) {
				form.addField(field);
			}
		}
	}
	return form;
}
/// Get the Form from ID
FormFactory.getFormFromId = function(id) {
	var root = ValidationFramework.getDocumentElement();
	if ( root == null || (!root.hasChildNodes()) ) return null;
	var vforms = root.childNodes;
	for (var i = 0; i < vforms.length; i++) {
		var f = vforms.item(i);
		if (typeof(f.tagName) != 'undefined' && f.tagName == 'form' && f.getAttribute("id") == id) {
			return FormFactory.getFormFromDOM(f);
		}
	}
	return null;
}

/**
 * A validation form object.
 */
function ValidationForm() {
	this._fields = [];
	this._id = null;
	this._showError = null;
	this._onFail = null;
	this._showType = null;

	this.getFields = function() { return this._fields; }
	this.setFields = function(p0) { this._fields = p0; }

	this.getId = function() { return this._id; }
	this.setId = function(p0) { this._id = p0; }

	this.getShowError = function() { return this._showError; }
	this.setShowError = function(p0) { this._showError = p0; }

	this.getShowType = function() { return this._showType; }
	this.setShowType = function(p0) { this._showType = p0; }

	this.getOnFail = function() { return this._onFail; }
	this.setOnFail = function(p0) { this._onFail = p0; }
	
	// find field by it's name
	this.findField = function(p0) {
		for (var i = 0; i < this._fields.length; i++) {
			if (this._fields[i].getName() == p0) {
				return this._fields[i];
			}
		}
		return null;
	}
	
	this.addField = function(p0) {
		this._fields[this._fields.length] = p0;
		p0.setForm(this);
	}
}

/**
 * A form filed. virtual.
 */
function ValidationField() {
	this._name = null;
	this._depends = [];
	this._displayName = null;
	this._onFail = null;
	this._form = null;

	this.getName = function() { return this._name; }
	this.setName = function(p0) { this._name = p0; }

	this.getDepends = function() { return this._depends; }
	this.setDepends = function(p0) { this._depends = p0; }

	this.getDisplayName = function() { return this._displayName; }
	this.setDisplayName = function(p0) { this._displayName = p0; }

	this.getOnFail = function() { return this._onFail; }
	this.setOnFail = function(p0) { this._onFail = p0; }
	
	this.getForm = function() { return this._form; }
	this.setForm = function(p0) { this._form = p0; }

	this.addDepend = function(p0) {
		this._depends[this._depends.length] = p0;
	}
}

///Factory methods for create Field
function FieldFactory() {}
FieldFactory.getFieldFromDOM = function(dom) {
	var field = new ValidationField();
	field.setName(dom.getAttribute("name"));
	field.setDisplayName(dom.getAttribute("display-name"));
	field.setOnFail(dom.getAttribute("onfail"));
	if (dom.hasChildNodes()) {
		var depends = dom.childNodes;
		for (var i = 0; i < depends.length; i++) {
			var item = depends.item(i);
			if (typeof(item.tagName) == 'undefined' || item.tagName != 'depend') {
				continue;
			}
			var dp = new ValidationDepend();
			dp.setName(item.getAttribute("name"));
			dp.addParam(item.getAttribute("param0"));
			dp.addParam(item.getAttribute("param1"));
			dp.addParam(item.getAttribute("param2"));
			dp.addParam(item.getAttribute("param3"));
			dp.addParam(item.getAttribute("param4"));
			field.addDepend(dp);
		}
	}
	return field;
}


function FormFieldUtils() {}

FormFieldUtils.findField = function(formName, fieldName) {
	
	var formArr = ValidationFramework.getAllForms();
	var theForm = null;
	for (var i = 0; i < formArr.length; i++) {
		if (formArr[i].getName() == formName) {
			theForm = formArr[i];
		}
	}

	if (theForm != null) {
		return theForm.findField(fieldName);
	} else {
		return null;
	}
}

/**
 * A validaton depend.
 */
function ValidationDepend() {
	this._name = null;
	this._params = [];

	this.getName = function() { return this._name; }
	this.setName = function(p0) { this._name = p0; }

	this.getParams = function() { return this._params; }
	this.setParams = function(p0) { this.params = p0; }

	this.addParam = function(p0) {
		this._params[this._params.length] = p0;
	}
}

function ValidateMethodFactory() {}
ValidateMethodFactory._methods = [];
ValidateMethodFactory.validateRequired = function(field, params) {
	var obj = ValidationFramework.getWebFormFieldObj(field);	
	if (obj == null) return false;
	if (typeof(obj.type) == "undefined") {
		var tmp = 0;
		for (var i = 0; i < obj.length; i++) {
			if (obj[i].checked) {
				return true;
			}
		}
		return false;
	}

	if (obj.type == "checkbox" || obj.type == "radio") {
		return (obj.checked);
	} else {
		return !(obj.value == "");
	}
}

ValidateMethodFactory.validateInteger = function(field, params) {
	var obj = ValidationFramework.getWebFormFieldObj(field);
	if (obj == null) return false;
	if (obj.value == "") return true;
	var exp = new RegExp("^-?\\d+$");
	return exp.test(obj.value);
}

ValidateMethodFactory.validateDouble = function(field, params) {
	var obj = ValidationFramework.getWebFormFieldObj(field);
	if (obj == null) return false;
	if (obj.value == "") return true;
	var exp = new RegExp("^-?\\d+\.\\d+$");

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产精品一区二区久久| 日本高清不卡aⅴ免费网站| 欧美人动与zoxxxx乱| 亚洲国产一二三| 88在线观看91蜜桃国自产| 亚瑟在线精品视频| 欧美一区二区三区的| 老司机精品视频线观看86| 日韩亚洲欧美在线观看| 国产毛片精品国产一区二区三区| 国产亚洲人成网站| 91影院在线观看| 视频在线观看91| 久久综合狠狠综合久久激情 | 奇米影视一区二区三区小说| 中文字幕一区av| 日韩**一区毛片| 国产精一区二区三区| 92精品国产成人观看免费| 91蜜桃网址入口| 欧美专区在线观看一区| 久久夜色精品国产欧美乱极品| 精品国内二区三区| 成人免费在线播放视频| 99re热这里只有精品免费视频| 国产在线精品免费| 中文字幕字幕中文在线中不卡视频| 91亚洲午夜精品久久久久久| 婷婷久久综合九色综合伊人色| 精品国精品国产| 色婷婷精品久久二区二区蜜臂av | 欧美理论在线播放| 国精品**一区二区三区在线蜜桃| 最新日韩av在线| 欧美tickling挠脚心丨vk| av午夜精品一区二区三区| 美女一区二区三区在线观看| 亚洲视频免费在线观看| 欧美成人三级电影在线| 在线精品视频一区二区三四| 国产在线看一区| 午夜精品久久久久久久| 国产精品丝袜久久久久久app| 这里是久久伊人| 色88888久久久久久影院按摩| 国产精品一区二区在线观看不卡 | 1000精品久久久久久久久| 亚洲成人av一区| 99r国产精品| 日韩电影在线看| 韩国v欧美v日本v亚洲v| 在线观看免费成人| 在线播放/欧美激情| 蜜臀久久久久久久| 欧美三日本三级三级在线播放| 777亚洲妇女| 激情久久五月天| 人人精品人人爱| 久久91精品久久久久久秒播| 久久精品一区蜜桃臀影院| 亚洲一区二区四区蜜桃| 奇米一区二区三区av| 欧美日韩一区 二区 三区 久久精品 | 国产福利91精品一区二区三区| 91麻豆精品91久久久久同性| 久88久久88久久久| 中文字幕欧美日本乱码一线二线 | 欧美日韩亚洲综合一区| 日韩电影在线一区| 中文字幕精品一区| 欧美大片在线观看一区| 国内国产精品久久| 秋霞电影网一区二区| 国产精品久久精品日日| 在线亚洲+欧美+日本专区| 男男gaygay亚洲| 亚洲无人区一区| 日韩一区二区三区在线| av不卡一区二区三区| 亚洲欧洲在线观看av| 色哟哟精品一区| 国产综合色产在线精品| 久久综合色一综合色88| 蜜桃久久久久久| 婷婷丁香久久五月婷婷| 亚洲宅男天堂在线观看无病毒| 欧美成人精品1314www| 黑人巨大精品欧美黑白配亚洲| 亚洲电影一区二区三区| 亚洲宅男天堂在线观看无病毒| 国产精品久线在线观看| 精品99一区二区| 日韩欧美成人激情| 国产三级精品视频| 国产精品亲子伦对白| 日韩欧美你懂的| 在线观看成人小视频| 97se亚洲国产综合自在线不卡| 一区二区三区在线免费播放| 极品销魂美女一区二区三区| 亚洲综合免费观看高清完整版在线| 国产精品无人区| 亚洲精品国产精华液| 7777精品伊人久久久大香线蕉完整版| 国产电影一区二区三区| 成人午夜精品一区二区三区| 成年人午夜久久久| 欧美亚洲综合另类| 精品免费国产一区二区三区四区| 国产精品美女久久久久久久久久久 | 欧美国产精品专区| 一区二区三区中文字幕| 午夜精品在线视频一区| 国产精品一品视频| 欧美色综合网站| 久久久精品天堂| 亚洲一线二线三线久久久| 加勒比av一区二区| 91小视频在线免费看| 欧美一区二区视频免费观看| 中文字幕免费不卡在线| 亚洲mv在线观看| www.99精品| 欧美大度的电影原声| 亚洲视频一区二区免费在线观看| 蜜桃传媒麻豆第一区在线观看| 97久久久精品综合88久久| 日韩精品在线一区二区| 亚洲日本在线天堂| 激情欧美日韩一区二区| 欧美在线观看视频一区二区三区 | 色综合久久天天| 欧美一区二区三区色| 亚洲欧美另类图片小说| 国产精品一区二区视频| 欧美伦理视频网站| 亚洲伦在线观看| 国产激情一区二区三区四区 | 欧美日韩精品一区二区在线播放| 欧美激情一区二区三区| 青娱乐精品在线视频| 欧美三级电影网| 亚洲人一二三区| 成人国产精品免费网站| 欧美成人乱码一区二区三区| 亚洲一区二区三区三| 成人精品免费视频| 国产亚洲精品bt天堂精选| 蜜芽一区二区三区| 欧美日韩国产一区二区三区地区| 亚洲精品国久久99热| 国产精品乡下勾搭老头1| 日韩一区二区视频| 亚洲一区二区三区国产| 色999日韩国产欧美一区二区| 国产精品久久久久aaaa樱花| 国产九色精品成人porny| www久久精品| 黄色日韩三级电影| 精品电影一区二区三区| 精品中文字幕一区二区小辣椒 | 91精品免费观看| 亚洲综合一区二区| 欧美综合亚洲图片综合区| 亚洲精品国产无套在线观| 91女神在线视频| 中文字幕在线观看不卡| 成人18精品视频| 亚洲日本丝袜连裤袜办公室| 成人黄色软件下载| 国产精品入口麻豆九色| 99精品视频中文字幕| 亚洲嫩草精品久久| 欧美亚洲一区二区在线| 一区二区理论电影在线观看| 欧美色综合天天久久综合精品| 亚洲成人动漫av| 欧美一卡二卡三卡| 国产伦精品一区二区三区视频青涩| 精品人伦一区二区色婷婷| 国产成人精品影视| 一区在线观看视频| 91黄色激情网站| 秋霞国产午夜精品免费视频| 精品国产凹凸成av人导航| 国产精品综合av一区二区国产馆| 国产香蕉久久精品综合网| 成人免费毛片片v| 亚洲精品视频一区| 91精品国产品国语在线不卡| 久久精品av麻豆的观看方式| 久久精品亚洲麻豆av一区二区| 国产成人亚洲精品狼色在线| 中文字幕在线不卡| 欧美男同性恋视频网站| 精品亚洲成a人在线观看| 国产女主播视频一区二区| 色综合天天做天天爱| 日韩 欧美一区二区三区| 国产欧美久久久精品影院|