jquery基元擴充套件序列化form
阿新 • • 發佈:2018-11-08
(function (window, $, undefined) { var _Core = function () { }; window.$Core = new _Core(); /******************************************util****************************** */ var _util = function () { /* * 序列化Form 返回陣列物件 * @param {any} domid domid */ this.QueryFormSerializeArray = function (domid) { var form = null; if (typeof (domid) === "string") from = $('#' + domid); else from = domid; var p = from.serializeArray(); var s = $.map(p, function (n) { var t = $("#" + n.name); if (t.size() == 0) t = from.find("*[textboxname='" + n.name + "']"); var query = {}; var s = $.trim(t.attr('data-query')); if (s) { if (s.substring(0, 1) != '{') { s = '{' + s + '}'; } query = (new Function('return ' + s))(); if (query.filed) { query.name = query.filed; //query.remove("filed"); } } //console.log(query); return $.extend({}, n, query); }); return s; }; /** * 序列化Form 返回字串 * @param {string} domid * @return {any} 序列化後的 */ this.QueryFormSerializeString = function (domid) { var s = this.QueryFormSerializeArray(domid); var strpars = JSON.stringify(s); return strpars; }; /** * 獲取當前頁面的資源編號 * */ this.getResId = function () { return $.util.getRequest()["resId"]; } /** * 獲取本資源所有可用的按鈕許可權 * */ this.getResActions = function () { var resid = this.getResId(); if (resid) { return window.top.findChildrenList(resid); } else return []; } this.valueToName = function (value, code) { var userIds = value.split(","); var name = ''; var users = $Core.DicCache.get(code).originalData; for (var i = 0; i < userIds.length; i++) { for (var j = 0; j < users.length; j++) { if (userIds[i] == users[j].id) { if (i == 0) { name += users[j].text; } else { name += "," + users[j].text; } break; } } } return name; } }; $Core.util = new _util(); })(window, jQuery);
獲取查詢引數
<form id="search_form" method="post">
var v = $Core.util.QueryFormSerializeString('search_form');
paras.querystr = v;
</form>