lab2.js 6.58 KB
/***
 * 
 * 
 * @author duanyugen
 * 
 * ***/

$(function(){
/*************************** 用户角色选择******************************** */
	$('#b1').click(function(){
		$obj = $("#s1 option:selected").clone(true);
		if($obj.size() == 0){
			alert("请至少选择一条!");
		}
		$('#s2').append($obj);
		$('#s1 option:selected').remove();
	});
	
	$('#b2').click(function(){
		$('#s2').append($('#s1 option'));
	});
	
	$('#b3').click(function(){
		$obj = $("#s2 option:selected").clone(true);
		if($obj.size() == 0){
			alert("请至少选择一条!");
		}
		$('#s1').append($obj);
		$('#s2 option:selected').remove();
	});
	
	$('#b4').click(function(){
		$('#s1').append($('#s2 option'));
	});
	
	$('table#juese option').dblclick(function(){
		var flag = $(this).parent().attr('id');
		if(flag == "s1"){
			var $obj = $(this).clone(true);
			$('#s2').append($obj);
			$(this).remove();
		} else {
			var $obj = $(this).clone(true);
			$('#s1').append($obj);
			$(this).remove();
		}
	});
	
/*******选择框提交时选中*****************************************************************************/
	
	$('#userAdd').submit(function(){
		
		
		/*****拼接id字符串*******/
		function getIdString() {
			var $addressObj = $("#jiaoge2 option");
			var id = "";	
			$addressObj.each(function() {
					return id += $(this).attr("val") + ',';
				});
			
			if ($addressObj.length > 0) {
				id = id.substr(0,id.length - 1);
		    };
		    return id;
		}
		
		/*****拼接地址名字字符串*******/
		function getNameString() {
			var $addressObj = $("#jiaoge2 option");
			var address = "";	
			$addressObj.each(function() {
				return address += $(this).html() + ',';
			});
			
			if ($addressObj.length > 0) {
				address = address.substr(0,address.length - 1);
			};
			return address;
		}
		/*****拼接用户角色字符串*******/
		function getUserRoleString() {
			var roles = "";	
			var $juse = $("#s2 option");
			
			$juse.each(function() {
				return roles += $(this).val() + ',';
			});
			
			if ($juse.length > 0) {
				roles = roles.substr(0,roles.length - 1);
			};
			return roles;
		}
		$("input[name='packUpAddressId']").val(getIdString());
		$("input[name='packUpAddress']").val(getNameString());
		$("input[name='rolesId']").val(getUserRoleString());
		
		
		
		
	});
	
/***********执行表单验证*****************/
	
	$("#roleAdd").validate({
			 rules:{
				  roleName:"isScript"
				  }
		   });
	$("#resourceAdd").validate({
		     rules: {
		    	 resourceName:"isScript"
		     }
	});
	$("#navbarAdd").validate({
		    rules: {
		    	projectName: "isScriptBack"
		    }
	});
	$("#menuAdd").validate({
		    rules: {
		    	label: "isScriptBack"
		    }
	});
	
	$("#userAdd").validate({
		  rules: {
			  jiaoge2: {
				  atLeastOneOption:1
				  },
			  s2:{
				  atLeastOneOption2:0
			  	},
			  passwordconfirm: {
				  passwordEqual:"input[name=\'password\']"
				  },
			  userName:"isScript",
			  realName:"onlyChinese",
			  serialNumber: {
				  numberAndLetter:"", remote:{
					  							url:window.parent.manageDomain + "/user/checkUserNum.do",
					  							data: {                     //要传递的数据
					  								serialNumber: function() {
					  						            return $("input[name='serialNumber']").val();
					  						        	},
					  						        	id: function() {
					  						        		return $("input[name='id']").val();
					  						        	}
					  						    	}
					  						}
			  	}
			  },
	      messages: {
	    	  jiaoge2: "请至少选择一个交割地",
	    	  s2: "请至少选择一个角色",
	    	  serialNumber: {
	    		  remote:"序列号重复"
	    	  }
			  }
			    });
	
/*************************** 用户交割地选择*********************************/
	$('#a1').click(function(){
		$obj = $("#jiaoge1 option:selected").clone(true);
		if($obj.size() == 0){
			alert("请至少选择一条!");
		}
		$('#jiaoge2').append($obj);
		$('#jiaoge1 option:selected').remove();
	});
	
	$('#a2').click(function(){
		$('#jiaoge2').append($('#jiaoge1 option'));
	});
	
	$('#a3').click(function(){
		$obj = $("#jiaoge2 option:selected").clone(true);
		if($obj.size() == 0){
			alert("请至少选择一条!");
		}
		$('#jiaoge1').append($obj);
		$('#jiaoge2 option:selected').remove();
	});
	
	$('#a4').click(function(){
		$('#jiaoge1').append($('#jiaoge2 option'));
	});
	
	$('table#jiaogedi option').dblclick(function(){
		var flag = $(this).parent().attr('id');
		if(flag == "jiaoge1"){
			var $obj = $(this).clone(true);
			$('#jiaoge2').append($obj);
			$(this).remove();
		} else {
			var $obj = $(this).clone(true);
			$('#jiaoge1').append($obj);
			$(this).remove();
		}
	});
	
	// 右边选择框必须有一个option
	jQuery.validator.addMethod("atLeastOneOption", function(value, element, param) {
	    var le = element.options.length;
	    if (le >= param) {
	    	return true;   
	    }
	    return false;
	}, "请至少选择一个m");
	
	// 右边选择框必须有一个option
	jQuery.validator.addMethod("atLeastOneOption2", function(value, element, param) {
		var le = element.options.length;
		if (le >= param) {
			return true;   
		}
		return false;
	}, "请至少选择一个m");
	
	
	// 隐藏框必须有值
	jQuery.validator.addMethod("hiddenValueRequire", function(value, element, param) {
		var valueLen = value.length;
	    if (valueLen > 0) {
	    	return true;   
	    }
	    	return false;
	}, "请至少选择一个交割地");
	
	// 两次密码输入一致
	jQuery.validator.addMethod("passwordEqual", function(value, element, param) {
		var ps = $(param).val();
		if (ps == value) {
			return true;   
		}
		return false;
	}, "两次密码输入不一致");
	
	//过滤特殊字符
	jQuery.validator.addMethod("isScript", function(value, element, param) {   
		var pattern = new RegExp("[!@#$^&*=\\[\\].<>/?&]");
	    if(pattern.test(value)) {
	    	return false;
	    }
	    return true;
	}, "请不要输入特殊字符");
	
	//过滤特殊字符允许()等
	jQuery.validator.addMethod("isScriptBack", function(value, element, param) {   
		var pattern = new RegExp("[!@#$^&*=\\[\\].<>?&]");
		if(pattern.test(value)) {
			return false;
		}
		return true;
	}, "请不要输入特殊字符");
	//仅中文
	jQuery.validator.addMethod("onlyChinese", function(value, element, param) {   
		var pattern = new RegExp("^[\\u4e00-\\u9fa5]+$");
		if(pattern.test(value)) {
			return true;
		}
		return false;
	}, "请输入中文");
	
	//请输入字母和数字
	jQuery.validator.addMethod("numberAndLetter", function(value, element, param) {   
		var pattern = new RegExp("^[A-Za-z0-9]+$");
		if(pattern.test(value)|| value=="") {
			return true;
		}
		return false;
	}, "请输入字母和数字");
	
	
});