bootstrap-table的使用(4)--表格内容修改并刷新后,仍留在本页

实现这个功能,就是在模态框弹出,修改内容并确定后,仍能够留在本页中,并实现表格内容的刷新。
实现这个功能,有几点需要实现:
1、模态框弹出,修改相应内容后,点击确定的值,模态框关闭时,记录下当前页码,赋值给mPage参数。
2、表格刷新后,跳至本页码,通过设置pageNumber参数,值为mPage,这样一个可变的参数。
3、模态框隐藏,即关闭后,模态框的内容清空。

模态框弹点击确认后,记录下当前页码,并刷新

模态框如下,请注意其中的changeData()函数的位置。

	       <!--添加bootstrap的模态框-->
	       <div class="export">
            <div class="modal fade" id="mod_IP_Info">
                <div class="modal-dialog modal-lg modal_position">
                    <div class="modal-content">
                        <div class="modal-header">
                            <h4 class="modal-title">修改 一条IP网络信息</h4>
                            <button type="button" class="close" data-dismiss="modal">&times;</button>
                        </div>
                        //重点在于,form中的onsubmit的参数,运行函数changeData()。
                        <form id="IP_Index_Refresh" action="IP_IndexServlet?act=mod" method="post" onsubmit="return changeData();">
                        <div class="modal-body">
                            <table id="xztb" class="table">
                                <!--新修改弹窗的样式-->
                                <tbody>
                                <tr>
                                    <td class="tb_bg"><label for="">序号</label>
                                    </td>
                                    <td><input name="userid" id="userid" readonly="readonly" type="text" placeholder="无需填写"/></td>
                                    <td class="tb_bg"><label for="">类型</label>
                                    </td>
                                    <td><input name="LX" id="LX" type="text" placeholder="请输入类型"/></td>
                                </tr>
                                <tr>
                                    <td class="tb_bg"><label for="">品牌</label>
                                    </td>
                                    <td><input name="PP" id="PP" type="text" placeholder="请输入品牌"/></td>
                                    <td class="tb_bg"><label for="">操作系统</label></td>
                                    <td><select name="CZXT" id="CZXT" class="form-control select_down" style="font-size: 13px; color: #666;width: 165px;margin-left: 75px">
                                            <option value="Windows XP">Windows XP</option>
                                            <option value="Windows 7">Windows 7</option>
                                            <option value="Windows Server">Windows Server</option>
                                            <option value="Linux">Linux</option>
                                            <option value="无"></option>
                                        </select></td>
                                    <!-- <td><input name="CZXT" id="CZXT" type="text" placeholder="请输入操作系统"/></td> -->
                                </tr>
                                <tr>
                                    <td class="tb_bg"><label for="">IP地址</label>
                                    </td>
                                    <td><input name="mIP" id="mIP" type="text" readonly="readonly"/></td>
                                    <td class="tb_bg"><label for="">MAC地址</label></td>
                                    <td><input name="MACDZ" id="MACDZ" type="text" placeholder="请输入MAC地址"/></td>
                                </tr>
                                <tr>
                                    <td class="tb_bg"><label for="">用户名</label>
                                    </td>
                                    <td><input name="YHM" id="YHM" type="text" placeholder="请输入用户名"/></td>
                                    <td class="tb_bg"><label for="">密码</label></td>
                                    <td><input name="MM" id="MM" type="text" placeholder="请输入密码"/></td>
                                </tr>
                                <tr>
                                    <td class="tb_bg"><label for="">接入地点</label>
                                    </td>
                                    <td><input name="JRDD" id="JRDD" type="text" placeholder="请输入接入地点"/></td>
                                    <td class="tb_bg"><label for="">最后修改时间</label></td>
                                    <td><input name="ZHXGSJ" id="ZHXGSJ" type="text" readonly="readonly"/></td>
                                </tr>
                                </tbody>
                            </table>
                        </div>
                        <div class="modal-footer">
                            <button type="button" class="btn btn-secondary" data-dismiss="modal">取消</button>
                            <button type="submit" class="btn btn-secondary">修改</button>
                        </div>
                        </form>
                    </div>
                </div>
            </div> 
        </div>

然后是表格和changeData()函数的内容,注意bootstrap-table的初始化时,其pageNumber参数,值为mPage,这样一个可变的参数。

    <table id="reportTable" >
    <tbody id="show_tbody">
        </tbody> 
    </table>

	<script type="text/javascript">
		var state ="loadData";
	var mIP ="28.41.64.XX";
	var StartSearch =null;
	var EndSearch =null;
	var mPage =1;
	
	var TableInit=function(){
	    var oTableInit = new Object();
	    oTableInit.Init=function(){
			$('#reportTable').bootstrapTable({
				method: 'get',
				url: "<c:url value='/IP_IndexServlet?act="+state+"&&mIP="+mIP+"&&start="+StartSearch+"&&end="+EndSearch+"'/>", //获取数据的Servlet地址
	            queryParams: function queryParams(params) {   //设置查询参数              
	            	var param = {                    
	            		pageNumber: params.pageNumber,                    
	            		pageSize: params.pageSize,                              
	            		};                
	            return param;                            
	            },

				cache: false,
				//height: 750, 
				striped: true,
				pagination: true, 
				silent: true, //以静默方式刷新数据
				toolbar:"#toolbar",
				locale:"zh-US", //表格汉化
				sidePagination: "client",
				pageSize: 10,
				pageNumber:mPage,  //注意,这里是重点,这里的页码是mPage,即一个可变的参数
				pageList: [10, 14,15, 16, 18,20],
				search: true,
				showColumns: true,
				showRefresh: true,
				showExport: true,
				exportDataType: 'all', 
				clickToSelect: true,
				exportTypes:[ 'excel','xlsx','doc','csv', 'txt', 'sql' ],
                exportOptions:{  
                    //ignoreColumn: [12,14],            //忽略某一列的索引  
                    fileName: '数据导出',              //文件名称设置  
                    worksheetName: 'Sheet1',          //表格工作区名称  
                    tableName: 'IP数据表',  
                    excelstyles: ['background-color', 'color', 'font-size', 'font-weight'],  
                    //onMsoNumberFormat: DoOnMsoNumberFormat  
                },
	            columns : [{
	                field : '序号',
	                title : '序号'
	            }, {
	                field : '类型',
	                title : '类型'
	            }, {
	                field : '品牌',
	                title : '品牌'
	            }, {
	                field : '操作系统',
	                title : '操作系统'
	            }, {
	                field : 'IP地址',
	                title : 'IP地址'
	            }, {
	                field : 'MAC地址',
	                title : 'MAC地址'
	            }, {
	                field : '责任单位',
	                title : '责任单位'
	            }, {
	                field : '责任人',
	                title : '责任人'
	            }, {
	                field : '用户名',
	                title : '用户名'
	            }, {
	                field : '密码',
	                title : '密码'
	            }, {
	                field : '接入地点',
	                title : '接入地点'
	            }, {
	                field : '最后修改时间',
	                title : '最后修改时间'
	            }, {
	                field : '是否分配',
	                title : '是否分配'
	            }, {
	                field : '备注',
	                title : '用途'
	            },{
	            	field: 'operate',
	            	title: '操作',
	            	align: 'center',
	            	events: operateEvents,//给按钮注册事件
	            	formatter: operateFormatter
	            }],
                responseHandler: function (res) {
                    return{                            //return bootstrap-table能处理的数据格式
                        "total":res.total,
                        "rows":res.rows
                    }
                },
			});
			//隐藏正在加载
			//$('#reportTable').bootstrapTable('hideLoading');
	    };
	    oTableInit.destroy=function(){
	        $("#reportTable").bootstrapTable('destroy');
	    }
	    return oTableInit;
	}
	var oTable = new TableInit();
	oTable.destroy();
	oTable.Init();
	
	//关闭弹出框时的执行函数
    function changeData(){
    	mPage=$("#reportTable").bootstrapTable("getOptions").pageNumber;
    	$('#IP_Index_Refresh').ajaxSubmit( {
    		success:function() { 
    			$('#mod_IP_Info').modal('hide');//隐藏弹出框
    	    	var oTable = new TableInit();//重置表格
    	    	oTable.destroy();
    	     	oTable.Init();
    		}
    	});
    	return false; 
	}

	</script>

清空弹出框的内容

这个时候弹出框只是隐藏而已,原本的一些内容不会清空,这样会影响再修改内容时,弹出框获取表格中的内容。因此需要清空。

	//清除弹窗原数据
	$("#mod_IP_Info").on("hidden.bs.modal", function() {
		document.getElementById("IP_Index_Refresh").reset();
	});
发布了45 篇原创文章 · 获赞 5 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/baidu_31788709/article/details/102691181