日期:2014-05-17  浏览次数:20611 次

jsp代码规范问题?
今天写代码让小弟很郁闷。。。。。
报Unable to compile class for JSP错  
错误代码:




  <%if(判断)
  {%>
  <td>内容</td>
  <%}%>

  <%else
  {%>
  <td>内容</td>
  <%}%>



改成
  <%if(判断)
  {%>
  <td>内容</td>
  <%}
  else{%>
   
  <td>内容</td>
  <%}%>

就没问题了,。。。。。为什么啊







------解决方案--------------------
其实就是jsp在判断的时候把if 还有 else 分开了

第一段代码当中你可以这样认为
if(判断){}在大括号后结束了if的判断,jsp认为你的if和else并不是连在一起进行的判断,就是说jsp认为你是用else直接作为开头,所以你错了。

而第二段是因为你的if的结束大括号和else同在<%代码段%>中,所以认为这个语句为
if(判断){

}else{

},就没有报错。

上面的语句被认为是
if(判断){

}在此结束了if

而后jsp认为你使用了else开头即
else{

}
所以报错