问题引出

easyUI的datagrid容许应用load办法,通过这样的形式向后盾发送数据:

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

问题来了,很多状况下,列表页上搜寻框通常会有很多搜寻条件,如果这样一个个条件的拼键值对,费时费力,那么有什么办法来疾速把搜寻条件批量转成json吗?答案是有的!

解决方案

间接上代码:
JS代码:

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

表单批量转json对象办法:

/**     * 主动将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;    };