Implementation of Bootstrap Table query

Keywords: Spring

Implementation of query ideas:
1. Define a local Toolbar including the buttons of new, save and new
2. Define a query form on the right that contains query criteria and query clear button
3. Define a Table

The effect is as follows:

The code is as follows

<div class="container-fluid">

    <div>
        <div id="toolbar-btn" class="btn-group pull-left" style="padding-bottom:10px;">
            <button id="btn_add" onclick="createFunction()" type="button" class="btn btn-primary btn-space">
                <span class="fa fa-plus-square" aria-hidden="true" class="btn-icon-space"></span>
                <@spring.message "fnd.new"/>
            </button>
            <button id="btn_save" onclick="saveFunction()" type="button" class="btn btn-success btn-space">
                <span class="fa fa-save" aria-hidden="true" class="btn-icon-space"></span>
                <@spring.message "fnd.save"/>
            </button>
            <button id="btn_delete" onclick="deleteFunction()" type="button" class="btn btn-danger btn-space">
                <span class="fa fa-trash-o" aria-hidden="true" class="btn-icon-space"></span>
                <@spring.message "fnd.delete"/>
            </button>
        </div>

        <div class="pull-right" id="query-form" style="padding-bottom:10px;">
            <input name="lookupType" placeholder='<@spring.message "fnd.lookup_type"/>' type="text"
                   style="float:left;width:150px;margin-right:5px;" v-model="lookupType"
                   class="form-control">
            <div style="float:left;margin-right:5px;">
                <input name="description" placeholder='<@spring.message "fnd.description"/>' type="text"
                       style="float:left;width:150px;margin-right:5px;" v-model="description"
                       class="form-control">
            </div>

            <div class="btn-group">
                <button id="btn_search" onclick="customSearch()" type="button" class="btn btn-primary btn-space">
                    <span class="fa fa-search" aria-hidden="true" class="btn-icon-space"></span>
                    <@spring.message "fnd.query"/>
                </button>
                <button id="btn_reset" onclick="resetSearch()" type="button" class="btn btn-default btn-space">
                    <span class="fa fa-eraser" aria-hidden="true" class="btn-icon-space"></span>
                    <@spring.message "fnd.reset"/>
                </button>
            </div>

        </div>
    </div>


    <table id="table" class="table  table-condensed table-striped"></table>

</div>
  • Query function implementation
    Implementation idea: get all the objects in the query block and store them in the parameters returned by the query dynamically
    Note:
    When there is no value in the query, it cannot be put into the query parameters. Otherwise, the data will be queried as a short, resulting in the failure to query the data
function queryParams(params) {
    var param = {};
    $('#query-form').find('[name]').each(function () {
        var value = $(this).val();
        if (value != '') {
            param[$(this).attr('name')] = value;
        }
    });

    param['pageSize'] = params.limit;   //Page size
    param['pageNumber'] = params.offset;   //Page number

    return param;
}

function customSearch(text) {
    $table.bootstrapTable('refresh');//Refresh the Table, and Bootstrap Table will automatically perform a re query
}
  • Implementation of reset function
    Implementation idea: loop to get the control of query form and leave its value empty
function resetSearch() {
    $('#query-form').find('[name]').each(function () {
        $(this).val('');
    });
}

Posted by koenigsbote on Fri, 01 May 2020 17:39:34 -0700