jswz

也不想根据你的具体情况进行修改了,你自己看看我曾经写过的这个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;

}