jQuery-form简易封装(hibernate)

本文介绍了一种使用jQuery扩展方法实现的表单序列化为JSON格式的技术。该方法能够处理单值和多值输入控件,包括复选框、多选下拉框等,并支持层次化的字段名。此外,还特别提到了对于Hibernate框架的支持。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

var data = $('#formLogin').serializeJson();

封装的方法

//扩展jQuery对象方法
$.fn.serializeJson = function() {
    var serializeObj = {};
    var array = this.serializeArray();
    $(array).each(function() {
        //判断有单值和多值分析
        if (serializeObj[this.name]) {
            //适用于有多个值的输入控件,复选框、多选的select
            if ($.isArray(serializeObj[this.name])) {
                serializeObj[this.name].push(this.value);
            } else {
                serializeObj[this.name] = [serializeObj[this.name], this.value];
            }
        } else {
            //适用于只有一个值的输入控件,文本框
            var idx = this.name.indexOf('\.');
            if (idx > 0) {
                //判断是否层次例如:dept.name=dept:{name:value}
                var firstLevel = this.name.substring(0, idx);
                var secondlevel = this.name.substring(idx + 1);
                var temp = {};
                temp[secondlevel] = this.value;
                serializeObj[firstLevel] = temp;
            } else {
                serializeObj[this.name] = this.value;
            }
        }
    });
    return serializeObj;
};
这个支持hibernate







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值