首页 > 代码库 > EasyUI回车提交表单

EasyUI回车提交表单

一、js工具类

/*******************************************************************************
 * 表单光标定位
 * 
 * @param formId
 * @param focusInputName
 */
function formFocus_Bruce(formId, focusInputName) {
	window.setTimeout(function() {
		$("#" + formId + " input[name='" + focusInputName + "']").focus();
	}, 0);
}

function formFocusTextArea_Bruce(formId, focusInputNameId) {
	window.setTimeout(function() {
		$("#" + formId + " #" + focusInputName).focus();
	}, 0);
}

function formFocusTextArea(formId, focusInputName) {
	window.setTimeout(function() {
		$("#" + formId + " textarea[name=" + focusInputName + "]").focus();
	}, 0);
}

/*******************************************************************************
 * 绑定指定表单元素类型的回车事件
 * 
 * @param formId
 *            表单
 * @param element
 *            元素类型 (input/select/radio/...)
 * @param subFunction
 *            回车后要运行的js函数
 * @param eventName
 *            键盘事件 (keyup/keydown/keypress...)
 */
function bindEnter_Bruce(formId, element, subFunction, eventName) {
	$("#" + formId + " " + element).bind(eventName, function(event) {
		if (event.keyCode == '13') {
			subFunction();
		} 
	});
}

/*******************************************************************************
 * 表单回车事件绑定 表单光标定位
 * 
 * @param formId
 * @param focusInputName
 * @param subFunction
 *            回车要运行的函数
 */
function bindFormComm(formId, focusInputName, subFunction) {
	bindEnter_Bruce(formId, 'input', subFunction, 'keyup');
	bindEnter_Bruce(formId, 'select', subFunction, 'keyup');
	formFocus_Bruce(formId, focusInputName);
}



二、測试用例

/**
 * 測试用例:
 * 
 * 绑定页面回车事件。以及初始化页面时的光标定位
 * 
 * @formId
 * 			表单ID	
 * @elementName
 * 			光标定位在指点表单元素的name属性的值
 * @submitFun
 * 			表单提交需运行的任务
 * 
 */
$(function(){
	bindFormComm("formId","elementName", submitFun);
})



三、实际使用

/**绑定页面回车事件。以及初始化页面时的光标定位**/$(function(){<span style="white-space:pre">	</span>bindFormComm("searchForm","data.plateNumber", doSearch4Bus);});



   

EasyUI回车提交表单