我快气晕了,分类显示类别的页面,像这样的view.jsp?class=3,为什么显示某些类别的时候不能正常显示呢?有的可以,有的不行,像view.jsp?clss=5可以view.jsp?class=6或7都不正常.不正常的时候页面出来的是某个标签,像这样的<td >或者是<td src="img/sd.jpg
 而且这些显示在页面上的标签都不是完整的,查看源代码的时候,正好页面就是解析这个<td src="img/sd.jpg的时候好像停止了一样,下边没有任何代码了,我用的是jtds的驱动,我以为是驱动的问题,换了好几个jtds的驱动都是一样,我已经郁闷5天了,老板还在催,我急,无果!高手快帮忙!小弟不胜感激!

解决方案 »

  1.   

    程序执行一半出错了,但是又没有被捕捉,看看生成的html源代码
      

  2.   

    生成的源代码无故中止了,查看源代码的时候就能年到<td src="img/sd.jpg
    ,下面没有了
      

  3.   

    引用:view.jsp?clss=5可以view.jsp?class=6不知道楼主是写错了还是故意逗我们开心?
      

  4.   

    昨天晚上猛睡一觉,今天早上醒来问题突然解决了,是substring的问题
      

  5.   

    肯定不是标签的问题,因为同是view.jsp?class=x页面,只是class后面的参数不同而已,比如说,当它等于心3的时候是正常的,但是当它等于4的时候就会出现这样的情况,今天早上又看我的代码,不知怎的,突然看到了substring(0,80),后来我把这个substring去掉试了一下,正常了,后来查JDK文档发现它会抛出一个IndexOutOfBoundsException异常,因为当文字小于40个的时候,它可能会抛出这个异常,而我又没有捕捉,程序因此停止,所以后边的标签像<td ><src=img/ss.jpg就这样被编译了一半,所以出现了页面的这种情况,不知道我分析的对不对!
      

  6.   

    数据库的字符串中存在 '>' 这个字符,需要转换成 &lt
      

  7.   

    以前遇到过这样的问题,原因是程序执行一半抛页面异常了。你可以把页面内容写一个标签,然后执行view.jsp?class=6或7,在eclipse中debug,肯定能debug到异常。
      

  8.   

    <%
    ResultSet rssort = DBConn.executeQuery("select id,photo,title,content from main where sort="+sorts+"order by id desc");
    do{
    %>
    <table width="98%" border="0" cellspacing="0" cellpadding="0">
            <tr> 
              <td width="5"><img src="Images/j_01.gif" width="5" height="5"></td>
              <td width="210" height="5" background="Images/j_02.gif"></td>
              <td width="5"><img src="Images/j_03.gif" width="5" height="5"></td>
            </tr>
            <tr> 
              <td background="Images/j_04.gif"></td>
              <td bgcolor="#f6e8e1"><table width="100%" border="0" cellpadding="2" cellspacing="0" bgcolor="#FFFFFF">
                  <tr> 
                    <td width="135" rowspan="4" align="center"><table width="74" height="84" border="0" cellpadding="3" cellspacing="1" bgcolor="#CCCCCC">
                        <tr> 
                          <td width="68" height="88" bgcolor="#FFFFFF"><%if (rssort.getString("photo")!=null){%> <a href="view_detail.jsp?id=<%=rssort.getString("id")%>&sort=<%=sorts%>"><img src="<%=rssort.getString("photo")%>" alt="" width="66" height="87" border="0"></a> 
                            <%}else{ %>
                            <div align="center">无图</div>
                            <%}%></td>
                        </tr>
                      </table></td>
                    <td colspan="2"><img src="Images/content_17.gif" width="9" height="9"> 
                      作品名:<a href="view_detail.jsp?id=<%=rssort.getString("id")%>&sort=<%=sorts%>"><span class="p14"><%=rssort.getString("title")%></span></a></td>
                  </tr>
                  <tr> 
                    <td colspan="2"><img src="Images/content_17.gif" width="9" height="9"> 
                      内容提要:</td>
                  </tr>
                  <tr> 
                    <td height="35" colspan="2">
                <%=rssort.getString("content").substring(0,80)%>
                    </td>
                  </tr>
                  <tr> 
                    <td width="305">&nbsp;</td>
                    <td width="111">&gt;&gt;<a href="view_detail.jsp?id=<%=rssort.getString("id")%>&sort=<%=sorts%>"><span class="p14">查看详情</span></a></td>
                  </tr>
                </table></td>
              <td background="Images/j_05.gif"></td>
            </tr>
            <tr> 
              <td><img src="Images/j_06.gif" width="5" height="5"></td>
              <td height="5" background="Images/j_07.gif"></td>
              <td><img src="Images/j_08.gif" width="5" height="5"></td>
            </tr>
          </table>
          <br>
          <%
       }while (rssort.next());
    }
    DBConn.rsClose();
    DBConn.connClose();
    %>
    <%=rssort.getString("content").substring(0,80)%>就是这一句出了问题后来改为这样就好了:<%
    if (rssort.getString("content").length()>80){
    out.println((rssort.getString("content")).substring(0,80)+"...");
    }else{
    out.println(rssort.getString("content"));
    }
    %>
      

  9.   

    是你自己写错了吧,一会儿class,一会儿clss?你程序里应该是用clss去url中的参数的
      

  10.   

    很久以前遇到跟楼主一摸一样的问题:(
    大家使用substring之前一定要判断字符串长度是否小于要截取的长度。