這是界面代碼:
function shua(){
var id_array=new Array();
$('input[id="checkAll"]:checked').each(function(){
id_array.push($(this).val());//向數組中添加元素
}); //獲取界面復選框的所有值
var chapterstr = id_array.join(',');//把復選框的值以數組形式存放
$.ajax({
//幾個參數需要注意一下
type: "POST",//方法類型
dataType: "json",//表示的數據格式,這里是json格式
url: "<%=path%>/biz/PayServlet?m=yibu",
data:{"chapterstr":chapterstr},//表示提交數據的具體內容
success: function (bjz) {//表示服務端成功響應
alert("所需繳納金額為:"+bjz);
//window.location.reload();//刷新界面
},
error : function() {//表示服務端響應不成功
alert("查詢金額異常!");//彈框提示
window.location.reload();//刷新界面
}
});
}
這是后台servlet的代碼:
private void yibu(HttpServletRequest request, HttpServletResponse response) throws SQLException {
try{
Policy policy = new Policy();
policy.cha();
Double bzj = policy.getBzj();//獲取年度標准金
String[] arr= request.getParameterValues("chapterstr");//獲取js傳遞過來的數組
PrintWriter out = response.getWriter();//建立發送對象,用於向前端發送數據
Double bzjr=0.0;//定義循環結果
if(arr==null){
bzj = 0.0;
out.println(bzj);//把計算結果發到前端
out.flush();//大概是停止發送的意思
out.close();//關閉發送對象
}else{
for(int i = 0;i<arr.length;i++){
//獲取過來的數組所有值都在第一個數據里,格式為**,**,**所以需要再次轉換為數組再進行金額計算
String[] values = arr[i].split(",");
for(int e = 0;e<values.length;e++){
bzjr=bzj+bzjr;
}
}
out.println(bzjr);//把計算結果發到前端
out.flush();//大概是停止發送的意思
out.close();//關閉發送對象
}
}catch(Exception e){
System.out.println("異常:"+e);
e.printStackTrace();
}
}
這是結果截圖: