问题引出
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; };