
使用 js 或者jquery
-----------------------------
但你动态增加行数据时,给当前增加的行 增加一个属性例如 name="addtr" <tr name="addtr"></tr>
当要获取时 可以使用js或jquery获取这种标记的tr就好
$(funciton(){$("tr [name='addtr']").each(function(){
alert($(this).html())//增加的每一条tr的html数据
})
})
jsp页面中可以通过动态生成excel的方式把table数据导入并保存。以下是例子:
public static void crExcel(List list, String absoluteFileString)
throws Exception {
// 字体格式
WritableFont wfc0 = new WritableFont(WritableFont.ARIAL, 22,WritableFont.BOLD, false, UnderlineStyle.NO_UNDERLINE,jxl.format.Colour.BLACK)
WritableCellFormat wcfFC0 = new WritableCellFormat(wfc0)
wcfFC0.setAlignment(jxl.format.Alignment.CENTRE)
wcfFC0.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE)
wcfFC0.setBorder(Border.ALL, BorderLineStyle.THIN,jxl.format.Colour.GRAY_25)
// 表头字体
WritableFont wfc8 = new WritableFont(WritableFont.ARIAL, 12,WritableFont.BOLD, false, UnderlineStyle.NO_UNDERLINE,jxl.format.Colour.BLACK)
WritableCellFormat wcfFC8 = new WritableCellFormat(wfc8)
wcfFC8.setAlignment(jxl.format.Alignment.CENTRE)
wcfFC8.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE)
wcfFC8.setBorder(Border.ALL, BorderLineStyle.THIN,jxl.format.Colour.GRAY_25)
WritableFont wfc1 = new WritableFont(WritableFont.ARIAL, 10,WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE,jxl.format.Colour.BLACK)
WritableCellFormat wcfFC1 = new WritableCellFormat(wfc1)
wcfFC1.setAlignment(jxl.format.Alignment.CENTRE)
wcfFC1.setBorder(Border.ALL, BorderLineStyle.THIN,jxl.format.Colour.GRAY_25)
// 创建excel
OutputStream os = new FileOutputStream(absoluteFileString)
String readPath = I18nMessages.getText("efine.excel.dir")
InputStream input = new FileInputStream(readPath
+ "FKBalanceReport.xls")
Workbook workbook = Workbook.getWorkbook(input)
WritableWorkbook book = Workbook.createWorkbook(os, workbook)
WritableSheet sheet = book.getSheet(0)
// 数据写入
Label label = null
// Title
//label = new jxl.write.Label(3, 0, "到期付款信息表", wcfFC0)
//sheet.addCell(label)
/*
* label = new jxl.write.Label(0, 3, "备注", wcfFC4)
* sheet.addCell(label)
*/
label = new jxl.write.Label(0, 0, "到期日", wcfFC8)
sheet.addCell(label)
label = new jxl.write.Label(1, 0, "部门名称", wcfFC8)
sheet.addCell(label)
label = new jxl.write.Label(2, 0, "币种", wcfFC8)
sheet.addCell(label)
label = new jxl.write.Label(3, 0, "银行", wcfFC8)
sheet.addCell(label)
label = new jxl.write.Label(4, 0, "金额", wcfFC8)
sheet.addCell(label)
label = new jxl.write.Label(5, 0, "业务类型", wcfFC8)
sheet.addCell(label)
label = new jxl.write.Label(6, 0, "摘要", wcfFC8)
sheet.addCell(label)
sheet.setName("到期付款信息查询")
int j = 1
for (int i = 0i <list.size()i++) {
DNCM02 dto = (DNCM02) list.get(i)
label = new Label(0, i + j, CommonUtil.dateToStr(dto.getEndDay()),
wcfFC1)
sheet.addCell(label)
label = new Label(1, i + j, dto.getEndDeptName(), wcfFC1)
sheet.addCell(label)
label = new Label(2, i + j, dto.getCurrencyName(), wcfFC1)
sheet.addCell(label)
label = new Label(3, i + j, dto.getEndBankName(), wcfFC1)
sheet.addCell(label)
label = new Label(4, i + j, CommonUtil.formatString(dto
.getEndAmount().toString()), wcfFC1)
sheet.addCell(label)
label = new Label(5, i + j, dto.getEndTypeName(), wcfFC1)
sheet.addCell(label)
label = new Label(6, i + j, dto.getRemark(), wcfFC1)
sheet.addCell(label)
}
book.write()
book.close()
os.close()
}
然后指定excel的保存路径即可。
<script language="javascript">iIndex = 0
var annex = 0
function getIndex()
{
iIndex = event.srcElement.parentElement.parentElement.rowIndex
return iIndex
}
function insertRow(iPos)
{
var otr=myTable.insertRow(annex)//插入一个tr
var ocell=otr.insertCell(0)//插入一个td
ocell.innerHTML="<input type=file size=20 name=annexValue(" + annex + ")>"
var ocell=otr.insertCell(1)//插入一个td
ocell.innerHTML=" <input type=button onclick=deleteRow(getIndex()) value='删除附件'>"
annex++
}
function deleteRow(iPos)
{
document.all.myTable.deleteRow(iPos)
annex--
}
</script>
<form name=myForm>
<a href="#" onClick="insertRow(0)">添加附件</a>
<table id="myTable"></table>
</form>
===================================
insertRow里的插入内容换成你自己的~
ie下可以用~firefox不行~
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)