<body> <%! //返回九九乘法表对应的HTML代码,通过表达式来调用。在页面上显示 String printMultiTable1(){ String s = ""; for(int i=1;i<=9;i++){ for(int j=1;j<=i;j++){ s+=i+"*"+j+"="+(i*j)+" "; } s+="<br>"; } return s; } //JSP内置out对象,使用脚本方式调用,打印九九乘法表 void printMultiTable2(JspWriter out)throws Exception{ for(int i=1;i<=9;i++){ for(int j=1;j<=i;j++){ out.println(i+"*"+j+"="+(i*j)+" "); } out.println("<br>"); } } %> <h1>九九乘法表</h1> <hr> <%=printMultiTable1() %> <br> <%printMultiTable2(out);%> </body>
通过脚本调用和通过表达式调用的时候,遇到自动换行的问题。通过表达式调用时当浏览器窗口过小时不会换行,而通过脚本调用时会自动换行,还有通过脚本调用时println不会换行,而会在后面补一个空格。求助大神两种方法为什么会发生这样的区别?
out.println()和out.print()的在html中区别就是多一个空格
out.println()相当于在页面写html代码,html代码并不能导致页面显示的换行,还需要在换行的代码后面加上<br>(html的换行是<br>)。