背景:
JqGrid+BootStrap整了一个表格,没有用JqGrid自带的搜索,而是自己写在了红框处,搜索处的代码:
<div class="panel-body" id="all">
<form class="form-inline text-center" action="#">
<select id="sel" name="by" class="form-control">
<option value="id">供应商ID</option>
<option value="name">供应商名称</option>
<option value="leader">负责人</option>
<option value="phone">联系电话</option>
</select>
<input id="inp" type="text" class="form-control" name="content" placeholder="所有">
<button type="submit" class="btn btn-success" id="btn1">搜索</button>
</form>
</div>
点击搜索重新刷新表格中的数据,代码:
//搜索 刷新表格中的数据
$("#btn1").click(function () {
//获取搜索条件和内容
var by = $("#sel").val();
var content = $("#inp").val();
//清空表格中数据
$("#tt").jqGrid("clearGridData");
//重新接收表格数据
$("#tt").jqGrid("setGridParam",{
url:"${pageContext.request.contextPath}/supplier/findLike?by="+by+"&content="+content+"",
dataType:"json",
type:"post"
}).trigger("reloadGrid");
});
运行的时候问题出现了:每次点击完搜索后,数据确实被搜索出来了,但是搜索出来的数据页面一闪而过,然后回到了最初的页面!!!!
改了好长时间不知道哪里的问题!
解决:
最后把form表单中的submit改了就好了,就红线的地方,之前写的是submit,真沙雕!
因为如果是submit的话表单就会提交到action路径,action又没写路径,默认就刷新了!