1. jsp調用java方法導出excel為什麼會彈出保存或下載的對話框,調用完之後直接將文件保存到指定路徑下即可。
調用java導出excel?
你的excel是文件形式還是頁面上的某個表格。如果是文件形式那就是下載了,彈出保存或下載窗口是應該的,但如果是頁面上的某個表格那麼不需要調用後台java來實現到處excel,直接js腳本語言就可以實現這個功能。。。
function AllAreaExcel(){
var oXL = new ActiveXObject("Excel.Application");
var oWB = oXL.Workbooks.Add();
var oSheet = oWB.ActiveSheet;
var sel=document.body.createTextRange();
sel.moveToElementText(printb);
sel.select();
sel.execCommand("Copy");
oSheet.Paste();
oXL.Visible = true;
}
sel.moveToElementText(printb); 這句中的printb是代表需要導入的表格id
2. jsp頁面導出excel文件,怎麼設置excel文件名呢如下圖的CAXWPPOD.xls改成一個固定的文字
jsp中設置:
response.setHeader("Content-Disposition","attachment;filename="+flag+".xls");//指定下載的文件名
response.setContentType("application/vnd.ms-excel");
3. jsp頁面點擊下載,彈出新窗口出現下載控制項,具體下載內容是資料庫中的一個欄位,下載文件為一個excel文件
也不想根據你的具體情況進行修改了,你自己看看我曾經寫過的這個js方法把,如果有不完美的地方自己修改一下把。使用下面方法前提是電腦中安裝了office
/**
* 25、將table中的數據導出到excel中
* @param tableId 表的id
* @return 無返回,方法中自動處理
*/
function outTableToExcel(tableId){
try{
var xls = new ActiveXObject( "Excel.Application" );
}catch(e){
alert( "要使用該功能,您必須安裝Excel電子表格軟體,並將電子稅務局網站添加為信任站點!\n"+
"添加方法:點擊瀏覽器上面的【工具】--點擊【Internet選項】--點擊【安全】--點擊【可信站點】--點擊【站點】--輸入或確認一下網址最後點擊【添加】");
return false;
}
xls.visible = true;
var xlBook = xls.Workbooks.Add;
var xlsheet = xlBook.Worksheets(1);
//xlsheet.SaveAs("D:\\TEST.XLS");//保存到哪裡
var x = 1;
var y = 1;
var objTab=document.getElementById(tableId);
for (var i = 0; i < objTab.rows.length; i++){
y = 1;
for (var j = 0; j < objTab.rows[i].cells.length; j++){
var cellValue="";
var tdcon=objTab.rows[i].cells[j];
if($(tdcon).find("select").length > 0){
//如果是下拉列表的話只得到選中的項顯示的值
var selectOb=$(tdcon).find("select").get(0);
cellValue = selectOb.options[selectOb.selectedIndex].innerHTML;
}else if($(tdcon).find("input").length > 0){
for(var k=0;k<$(tdcon).find("input").length;k++){
if($(tdcon).find("input").get(k).type != "hidden" && $(tdcon).find("input").get(k).type != "checkbox" &&
$(tdcon).find("input").get(k).type != "radio"){
//如果是文本框,則只得到文本框內的值
cellValue = $(tdcon).find("input").get(k).value;
}else if($(tdcon).find("input").get(k).type != "hidden"){
cellValue = "無效列";
}
}
}else{
var yszfc = tdcon.innerHTML;
var bqsl=yszfc.split("</").length;
for(var yszfcIndex=1;yszfcIndex<bqsl;yszfcIndex++){
var ksbqWz=yszfc.indexOf("<");
var ksbqJsWz=yszfc.indexOf(">");
var jsbqWz=yszfc.lastIndexOf("</");
var jsbqJsWz=yszfc.lastIndexOf(">");
var yszfc1=yszfc.substring(ksbqWz,ksbqJsWz+1);
var yszfc2=yszfc.substring(jsbqWz,jsbqJsWz+1);
yszfc=yszfc.replace(yszfc1, "");
yszfc=yszfc.replace(yszfc2, "");
}
cellValue=yszfc;
}
xlsheet.Columns(y).NumberFormatLocal= "@";
xlsheet.Cells(x, y).Value = cellValue;
xlsheet.Cells(x, y).Borders.LineStyle = 1;
y++;
}
x++;
}
xlsheet.Columns.AutoFit; //自動適應大小
return;
}