jQuery序列化表單成對象的簡單實(shí)現(xiàn)
在使用easyui的datagrid組件時(shí),在查詢時(shí)傳遞的查詢參數(shù)是對象類型,為了方便,擴(kuò)展了jquery中的序列化方法,調(diào)用該方法,可以將表單的所有數(shù)據(jù)序列化
$.fn.serializeObject=function(){
var obj=new Object();
$.each(this.serializeArray(),function(index,param){
if(!(param.name in obj)){
obj[param.name]=param.value;
}
});
return obj;
};
具體使用:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@include file="/WEB-INF/views/inc/taglibs.jsp"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<jsp:include page="/WEB-INF/views/inc/meta.jsp"></jsp:include>
<title>Insert title here</title>
<script type="text/javascript">
/* 將form表單序列化成對象object*/
$.fn.serializeObject=function(){
var obj=new Object();
$.each(this.serializeArray(),function(index,param){
if(!(param.name in obj)){
obj[param.name]=param.value;
}
});
return obj;
};
$(function() {
query();
});
function query() {
var params=$('#queryForm').serializeObject();
//{username:$('#username').val()}
$('#dg').datagrid({
url : '${ctx}/user/loadData.action',
pagination : true,
idField : 'id',
rownumbers : true,
singleSelect : true,
queryParams : params,
pageSize : 10,
pageNumber:1,
pageList : [ 10, 20, 30, 40 ],
sortName : 'age',
sortOrder : 'asc',
fitColumns : true,
columns : [ [
{field : 'phone',title : '電話',width : 150,align : 'center',sortable : 'true'},
{field : 'age',title : '年齡',width : 100,align : 'center',sortable : 'true'},
{field : 'email',title : '郵箱',width : 100,align : 'left',sortable : 'true'},
{field : 'username',title : '用戶名',width : 150,align : 'center',sortable : 'true'},
{field : 'password',title : '密碼',width : 200,align : 'left'},
{field : '_opt',title : '操作',width : 200,align : 'center',formatter : fmtOperate}
] ]
});
}
function fmtOperate(value, row, index) {
var e='';
e += '<a href="${ctx}/user/initForm.action?id=' + row.id + '">編輯</a> ';
e += '<a href="javascript:void(0)" onclick="del(' + row.id + ');">刪除</a>';
return e;
}
/* 刪除 */
function del(id) {
$.messager.confirm("系統(tǒng)提示", "您確定要?jiǎng)h除這條記錄嗎?", function(r) {
if (r) {
$.post("${ctx }/user/delete.action", {id : id}, function(result) {
if (result.isSuccess) {
$.messager.show({
title : "系統(tǒng)提示",
msg : result.msg,
showType : "show"
});
$("#dg").datagrid("reload");
} else {
$.messager.show({
title : "系統(tǒng)提示",
msg : result.msg,
showType : 'show'
});
}
}, "json");
}
});
}
/*添加*/
function add(){
window.location.href="${ctx}/user/initForm.action?id=0";
}
</script>
</head>
<body>
<form id="queryForm">
<label>用戶名:</label><input type="text" name="username" id="username"/>
<input type="button" onclick="query();" value="查詢"/>
<input type="button" onclick="add();" value="添加"/>
</form>
<!-- 表格顯示數(shù)據(jù) -->
<table id="dg"></table>
</body>
</html>
以上這篇jQuery序列化表單成對象的簡單實(shí)現(xiàn)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
jquery.cookie.js 操作cookie實(shí)現(xiàn)記住密碼功能的實(shí)現(xiàn)代碼
jquery.cookie.js操作cookie實(shí)現(xiàn)記住密碼功能,很簡單很強(qiáng)大,喜歡的朋友可以參考下。2011-04-04
jQuery回調(diào)函數(shù)的定義及用法實(shí)例
這篇文章主要介紹了jQuery回調(diào)函數(shù)的定義及用法,以實(shí)例形式詳細(xì)分析了回調(diào)函數(shù)的原理與實(shí)現(xiàn)技巧,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2014-12-12
struts2+jquery組合驗(yàn)證注冊用戶是否存在
這篇文章主要介紹了使用struts2+jquery如何驗(yàn)證注冊用戶是否存在,需要的朋友可以參考下2014-04-04
jquery 實(shí)現(xiàn)輪播圖詳解及實(shí)例代碼
這篇文章主要介紹了jquery 實(shí)現(xiàn)輪播圖相關(guān)資料,經(jīng)過一段時(shí)間學(xué)習(xí)jquery 的知識(shí),這里寫一個(gè)簡單的輪播圖,需要的朋友可以參考下2016-10-10
jQuery實(shí)現(xiàn)根據(jù)生日計(jì)算年齡 星座 生肖
本篇文章主要是對利用jQuery實(shí)現(xiàn)根據(jù)生日計(jì)算年齡,星座,生肖的示例代碼進(jìn)行了介紹,需要的朋友可以過來參考下2016-11-11
jQuery 回調(diào)函數(shù)(callback)的使用和基礎(chǔ)
這篇文章主要介紹了jQuery 回調(diào)函數(shù)(callback)的使用和基礎(chǔ),需要的朋友可以參考下2015-02-02

