大家请看:
我要显示jsp页面该标签输出的值的前2位,如何得到??
<c:out value=”${user.username}” > 
也就是说${user.username}的值的前2位,在jsp上如何实现? 该标签里能用substring(0,2)吗? 各位请支招

解决方案 »

  1.   

    <c:out value=”${user.username}”这个没用过
    用这样吧
    <%=user.username.substring(0,2)%>
      

  2.   

    标签里面不能使用方法,只能使用属性,所以你可以考虑用2楼的办法。硬是要用标签的话,得自己写一个bean,里面有set前两位和get前两位方法才行。
      

  3.   

    如果用<%=user.username.substring(0,2)%>这个user值还需要从页面来获取一次,而使用标签则直接能得到.
      

  4.   

    不要的
    只要你确定有user这个类的实例
      

  5.   

    不一定是formbean,标签里面只能输出有getXXX()方法的属性XXX,你要想输出username的前两位,而现在你的username是一个字符串,显然不具有那个get方法。我让你写个bean的意思就是让你想办法让username具有get前两位()这样一个方法。如果你的username只能是一个字符串的话,这种办法就行不通。
      

  6.   

    还有个问题<c:out value=”${user.username}”>输出的值带空格如何处理? 不在数据库修改
      

  7.   

    trim?
    好像jsp里面只能用replace来
      

  8.   

    在哪trim() ?  <c:out value=”${user.username}.trim()”>
      

  9.   

    <c:out value=”${user.username}”> 这个标签里怎能用replace或者trim() ??
      

  10.   

    告诉你们吧 ${fn:substring(user.username, 0, 10)} 我找到答案了
      

  11.   

     可能要先转后用呢
    String userName=request.parameter("username").substring(0,2);
    <c:out value="S{userName}" />