//將表單序列化成字符串
$.fn.serializeObject = function () {
var obj = {};
var count = 0;
$.each(this.serializeArray(),
function (i, o) {
var n = o.name, v = o.value;
count++;
obj[n] = obj[n] === undefined
? v
: $.isArray(obj[n])
? obj[n].concat(v)
: [obj[n], v];
});
obj.nameCounts = count + ""; //表單name個數
return JSON.stringify(obj);
};
//添加或者修改json數據
function setJson(jsonStr, name, value) {
if (!jsonStr) jsonStr = "{}";
var jsonObj = JSON.parse(jsonStr);
jsonObj[name] = value;
return JSON.stringify(jsonObj);
}
//刪除數據
function deleteJson(jsonStr, name) {
if (!jsonStr) return null;
var jsonObj = JSON.parse(jsonStr);
delete jsonObj[name];
return JSON.stringify(jsonObj);
}
////生成測試
// var myjsonStr = setJson(null,"name","aaa");
// alert(myjsonStr);
////添加測試
// myjsonStr = setJson(myjsonStr,"age",18);
// alert(myjsonStr);
////修改測試
// myjsonStr = setJson(myjsonStr,"age",20);
// alert(myjsonStr);
////刪除測試
// myjsonStr = deleteJson(myjsonStr,"age");
// alert(myjsonStr);