今天遇到的問題是這樣的,就是下面這部分代碼,訪問後臺一直不成功,將location換成window.open()訪問就能訪問.
<head>
<script language="javascript">
function exportExcel(){
//獲取所有選中的複選框,進行遍歷,返回每一個value的值,使用逗號進行隔開
var map = $("input:checkbox:checked").map(function(index,elem) {
return $(elem).val();
});
var cpids = map.get().join(',');
var date = "${list[0].dates}";//獲取需要導出的數據的日期,傳遞到後臺進行條件查詢
//此時使用location的時候不能跳轉到後臺去
location="${pageContext.request.contextPath}/dataIndex/exportExcelAll?date="+date+"&cpids="+cpids;
//open()方法卻可以訪問後臺
//window.open("${pageContext.request.contextPath}/dataIndex /exportExcelAll?date="+date+"&cpids="+cpids);
}
</head>
<body>
<form name="selfse" action="">
<table width="90%" align="center">
<tbody><tr>
<td align="right">
<!--點擊按鈕,訪問exportExcel()方法-->
<button onclick="exportExcel()">合併導出</button>
</td>
</tr></tbody>
</table>
</form>
</body>
最後發現是我的點擊按鈕在一個form表單裏,當按鈕沒有指定按鈕類型的時候,在表單裏默認是submit類型,所以在每次點擊的時候它並沒有訪問jquery中的路徑,而是submit表單的action路徑,所以不能訪問
解決辦法1,直接刪除form表單
2,在button按鈕的type屬性上添加button類型type="button"