easyUI datagrid实现前台表单数据批量转json串

问题引出

easyUI的datagrid容许使用load方法,经过这样的方式向后台发送数据:javascript

$('#dg').datagrid('load',{
    code: '01',
    name: 'name01'
});

问题来了,不少状况下,列表页上搜索框一般会有不少搜索条件,若是这样一个个条件的拼键值对,费时费力,那么有什么方法来快速把搜索条件批量转成json吗?答案是有的!java

解决方案

直接上代码:
JS代码:json

/*****************搜索数据****************************/
  $(function () {
      $("#searchBtn").click(function () {
            const serializeArr = $('#fm1').serializeObject();
            $('#dg').datagrid('load', serializeArr);
        });
    })

表单批量转json对象方法:this

/**
     * 自动将form表单封装成json对象
     */
  $.fn.serializeObject = function() {
        var o = {};
        var a = this.serializeArray();
        $.each(a, function() {
            if (o[this.name]) {
                if (!o[this.name].push) {
                    o[this.name] = [ o[this.name] ];
                }
                o[this.name].push(this.value || '');
            } else {
                o[this.name] = this.value || '';
            }
        });
        return o;
    };
相关文章
相关标签/搜索