まとめのJQueryベース文法応用(四)——よく使われる上の例のまとめ

4526 ワード

一、JQueryはページ要素の自動計算
フォーカスを失って各必要値を加算(name法)

	 $("input[name='formBean.programmeBuildFund']").blur(function(){
		 var programmeBuildFund = Number($("input[name='formBean.programmeBuildFund']").val());
		 var programmeBuildOtherFund = Number($("input[name='formBean.programmeBuildOtherFund']").val());
		 var prepareFund = Number($("input[name='formBean.prepareFund']").val());
		 //       
		 totalAssets = (programmeBuildFund*100+programmeBuildOtherFund*100+prepareFund*100)/100;
		 $("input[name='formBean.totalAssets']").val(totalAssets);
	});
	 $("input[name='formBean.programmeBuildOtherFund']").blur(function(){
		 var programmeBuildFund = Number($("input[name='formBean.programmeBuildFund']").val());
		 var programmeBuildOtherFund = Number($("input[name='formBean.programmeBuildOtherFund']").val());
		 var prepareFund = Number($("input[name='formBean.prepareFund']").val());
		 totalAssets = (programmeBuildFund*100+programmeBuildOtherFund*100+prepareFund*100)/100;
		 $("input[name='formBean.totalAssets']").val(totalAssets);
	});
	 $("input[name='formBean.prepareFund']").blur(function(){
		 var programmeBuildFund = Number($("input[name='formBean.programmeBuildFund']").val());
		 var programmeBuildOtherFund = Number($("input[name='formBeanprogrammeBuildOtherFund']").val());
		 var prepareFund = Number($("input[name='formBean.prepareFund']").val());
		 totalAssets = (programmeBuildFund*100+programmeBuildOtherFund*100+prepareFund*100)/100;
		 $("input[name='formBean.totalAssets']").val(totalAssets);
	});

処理の精度が失われました(整数が加算され、ここで入力ボックスは現在2桁の小数)
フォーカスを失って各必要値を加算する(class法)
//すべての計算inputにclass->addを加え、遍歴加算
$(".add").on("blur", function() {
			var totalInvestment = 0;
			$(".add").each(function() {
				totalInvestment += parseFloat($(this).val());
			});
			$("input[name='digitalInfrastructure.totalInvestment']").attr("value", totalInvestment);
		})

Enterキーイベントのバインド
//         
	document.onkeydown = function(event) {
		var e = event || window.event || arguments.callee.caller.arguments[0];
		if (e && e.keyCode == 13) { // enter  
			$("#submitForm").click();
		}
	};

パスワードの有効性の検証
function check_pass(val) {
	var value = val;
	var value_length = value.length;
	var code_length = 0;
	
	//          6-20   
	if (value_length >= 6 && value_length <= 20) {
		//$('#reg .info_pass .q1').html('●').css('color', 'green');
	} else {
		//$('#reg .info_pass .q1').html('○').css('color', '#666');
	}
	
	//          ,          ,      
	if (value_length > 0 && !/\s/.test(value)) {
		//$('#reg .info_pass .q2').html('●').css('color', 'green');
	} else {
		//$('#reg .info_pass .q2').html('○').css('color', '#666');
	}
	
	//          ,    ,    ,  ,             
	if (/[\d]/.test(value)) {
		code_length++;
	}
	
	if (/[a-z]/.test(value)) {
		code_length++;
	}
	
	if (/[A-Z]/.test(value)) {
		code_length++;
	}
	
	if (/[^\w]/.test(value)) {
		code_length++;
	}
	
	if (code_length >= 2) {
		//$('#reg .info_pass .q3').html('●').css('color', 'green');
	} else {
		//$('#reg .info_pass .q3').html('○').css('color', '#666');
	}
	
	//    
	if (value_length >= 10 && code_length >= 3) {
	
		$(".pwdmsg").css('color','#32CD32').text("  ");	
	} else if (value_length >= 8 && code_length >= 2) {
	
		$(".pwdmsg").css('color','#ff8a4f').text("  ");
	} else if (value_length >= 1) {
	
		$(".pwdmsg").css('color','#FF6347').text("  ");
	} else {
		$(".pwdmsg").text(" ");
	}	
	
	if (value_length >= 8 && value_length <= 20 && !/\s/.test(value) && code_length >= 2) {
		return true;
	} else {
		return false;
	}
	
}

ベースパスワード検証
//            ,     8-16    
	function isNumbAndLetter(str) {
		var reg = /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{8,16}$/;
		return reg.test(str);
	}