欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

JS批量获取参数构建JSON参数对象

程序员文章站 2022-08-10 07:58:03
在做系统的时候,往往查询条件是被严格指定的,大量的查询条件,一两个页面还可以通过dom去一个一个获取,再构建参数对象,请求后台接口。 这里给大家讲一个批量获取前端参数,构建参数对象。 var RequestObj=$('#**_FormId').serializeObject() $.fn.seri ......

在做系统的时候,往往查询条件是被严格指定的,大量的查询条件,一两个页面还可以通过dom去一个一个获取,再构建参数对象,请求后台接口。

这里给大家讲一个批量获取前端参数,构建参数对象。

<form name="@viewdata["title"]_formid" id="@viewdata["title"]_formid">
    <table class="custom_table" style="width:100%;">
        <tr>
            <td class="custom_td_tip">收票人:</td>
            <td>
                <input name="takerid" id="@viewdata["title"]_takerid" style="width: 265px;" />
            </td>
            <td class="custom_td_tip">用途:</td>
            <td>
                <input name="purpose" id="@viewdata["title"]_purpose" style="width:120px;" />
            </td>
            <td class="custom_td_tip">项目号:</td>
            <td>
                <input class="easyui-textbox" name="projectnumber" id="@viewdata["title"]_projectnumber" style="width:120px;" />
            </td>
            <td class="custom_td_tip">no:</td>
            <td>
                <input class="easyui-textbox" name="peweno" id="@viewdata["title"]_peweno" style="width:120px;" />
            </td>
        </tr>
        <tr>
            <td class="custom_td_tip">申请日期:</td>
            <td>
                <input name="createtime_str" id="@viewdata["title"]_createtime_str" type="text" class="easyui-datebox" data-options="editable:false" style="width:125px;">
                -
                <input name="createtime_end" id="@viewdata["title"]_createtime_end" type="text" class="easyui-datebox" data-options="editable:false" style="width:125px;">
            </td>
            <td class="custom_td_tip">订单号:</td>
            <td>
                <input class="easyui-textbox" name="dbsorderid" id="@viewdata["title"]_dbsorderid" style="width:120px;" />
            </td>
 
            <td class="custom_td_tip">发票号:</td>
            <td>
                <input class="easyui-textbox" name="vatbill" id="@viewdata["title"]_vatbill" style="width:120px;" />
            </td>
            <td class="custom_td_tip"> 单号:</td>
            <td>
                <input class="easyui-textbox" name="dbsworkid" id="@viewdata["title"]_dbsworkid" style="width:120px;" />
            </td>
        </tr>
        <tr>
            <td class="custom_td_tip">汇票到期日:</td>
            <td>
                <input name="accepttodate_str" id="@viewdata["title"]_accepttodate_str" type="text" class="easyui-datebox" data-options="editable:false" style="width:125px;">
                -
                <input name="accepttodate_end" id="@viewdata["title"]_accepttodate_end" type="text" class="easyui-datebox" data-options="editable:false" style="width:125px;">
            </td>
            <td class="custom_td_tip">客户名:</td>
            <td>
                <input class="easyui-textbox" name="customername" id="@viewdata["title"]_customername" style="width: 120px;" />
            </td>
            <td class="custom_td_tip">对应部门:</td>
            <td colspan="3">
                <input name="department" id="@viewdata["title"]_department" style="width:355px;" />
            </td>
        </tr>
    </table>
</form>
 
var requestobj=$('#**_formid').serializeobject()
 
$.fn.serializeobject = function () {
    var obj = {};
    var formarray = this.serializearray();
    $.each(formarray, function () {
        if (obj[this.name] !== undefined) {
            if (!obj[this.name].push) {
                obj[this.name] = [obj[this.name]];
            }
            obj[this.name].push(this.value || '');
        } else {
            obj[this.name] = this.value || '';
        }
    });
    return obj;
}