JSP開發慢慢積累中,幾下近段時間的技術使用,都是些小技術。不以善小而不爲,不以惡小而爲之。
一、<base target="_self"/> 的用法。在項目的彈出式的模型窗口裏,我需要將數據提交到服務器,然後從服務器再返回到本頁面,結果:返回了本頁面,窗口卻是從新打開的。在JSP頁面將<base target="_self"/>加入到<head>標籤裏就可以了。
二、window.open 與 window.opener 的用法。使用window.open打開一個彈出窗口,當在此彈出窗口選擇的值需要回寫到主頁面時,可以用window.opener.document.getElementById(id).value= ‘value’ 的方式將‘value’賦給父頁面的元素id。
三、$each()與.css 的用法。查找頁面上的元素,可通過$each()方法根據id,name,type等屬性查找,並根據每一個元素來執行操作。.css方法可以動態更改頁面上某一個元素的樣式。例如,查找頁面上所有id以'T_'開頭的td元素,並將值爲'是'的背景顏色更改爲綠色,否則紅色:
$.each($("td[id^='T_]"), function(){
if($(this).text() == "是"){
$(this).css("background","#00ff00");
}else{
$(this).css("background","#ff0000");
}
});
四、response導出文件。在JSP頁面上導出文件,使用response.getOutputStream()的方式來響應客戶端文件輸出流的響應,從而使客戶端可以下載服務器上的文件。例如客戶端下載一個.xls文件:
response.reset(); //response 初始化階段
response.setContentType("application/x-download");
request.setCharacterEncoding("GBK");
filename = new String("filename".getBytes("GBK"), "iso-8859-1")+".xls";
response.addHeader("Content-Disposition","attachment;filename=" + filename);
response.setContentType("application/msexcel");
java.io.OutputStream outp = null;
java.io.FileInputStream in = null;
outp = response.getOutputStream();
jxl.write.WritableWorkbook wk = jxl.Workbook.createWorkbook(outp); //excel文件的內容寫到response輸出流中,提供給客戶端
/**寫EXCEL處
wk.setColourRGB(Colour.GRAY_25, 0xF2, 0xF2, 0xF2);
wk.setColourRGB(Colour.BLUE, 0xCC, 0xEB, 0xFF);
jxl.write.WritableSheet sheet = wk.createSheet(yearTh+"."+monthTh,0);
sheet.getSettings().setShowGridLines(false);
sheet.getSettings().setPrintGridLines(false); //
.........
wk.write();
wk.close();
*/
out.clear();
out = pageContext.pushBody(); //輸出完成