STRUTS1中,如何在JSP页面获取form bean中某属性的值,并根据此值做运算?
如form中有个属性为line,在Action中运算后,跳转到jsp时,jsp根据这个line的值,决定要合并多少列,即是<td colspan='line'></td>,
或者把line的值赋给jsp中变量m,对m进行运算?

解决方案 »

  1.   

    <td colspan='<%=line%>'></td>
      

  2.   

    用request.setAttribult("a",a);或者session
      

  3.   

    form里的值不是要用标签才能用吗?如<bean:write name="querylist" property="columns"/>这个form的属性是个LIST,要在页面上用<logic:iterate>标签循环取出一个个对象的属性column呢?哪个能贴出详细的实现代码呢?
      

  4.   

    比如你的form 叫 UserForm那么action里面获取UserForm userform = (UserForm)form;
    userform.get你的某个属性();就这样获取的!
    希望对你有帮助
      

  5.   

    我常用的方式是:在后台取出line  然后放到request里面  在前台使用bean:write标签输出!
    其实想实现你所说的这些方法挺多的。
      

  6.   

    我都说了,用<bean:write name="querylist" property="columns"/>
    仅仅是输出显示是很容易的事情,
    我现在要实现的是 把这个column值赋给jsp页面的某个变量。怎么没有高手出来解答呢?
      

  7.   


    你的意思是struts标签嵌套使用?struts标签不能嵌套使用。
    比如:
    <bean:define id="line" value="<bean:write name="querylist" property="columns"/>
    "/>这样试下:
    <bean:define id="line" name="querylist"/>
    "/>
      

  8.   

    =============================================
    再说明白点,
    如 我有个form名为myForm,它有一个属性是int column;
    这个myForm在myAction中运算后,它的column属性被赋予了一个值,这个值是不定的,
    现在跳到jsp页面上,jsp上如何使用这个column值进行运算呢?
    使用<td colspan=="<bean:write name="querylist" property="columns">是要报错的、
    用 <%int i;%>,<%i=="<bean:write name="querylist" property="columns"%>也是不行的
    有什么办法呢
      

  9.   


    =============================================发现一个错误,重新发一次,以此为准
    再说明白点,
    如 我有个form名为myForm,它有一个属性是int column;
    这个myForm在myAction中运算后,它的column属性被赋予了一个值,这个值是不定的,
    现在跳到jsp页面上,jsp上如何使用这个column值进行运算呢?
    使用<td colspan=="<bean:write name="myForm" property="column">是要报错的、
    用 <%int i;%>,<%i=="<bean:write name="myForm" property="column"%>也是不行的
    有什么办法呢
      

  10.   


    =============================================发现一个错误,重新发一次,以此为准
    再说明白点,
    如 我有个form名为myForm,它有一个属性是int column;
    这个myForm在myAction中运算后,它的column属性被赋予了一个值,这个值是不定的,
    现在跳到jsp页面上,jsp上如何使用这个column值进行运算呢?
    使用<td colspan="<bean:write name="myForm" property="column">是要报错的、
    用 <%int i;%>,<%i="<bean:write name="myForm" property="column"%>也是不行的
    有什么办法呢
      

  11.   

    <td colspan=="<bean:write name="myForm" property="column"> 报什么错  我只看到你colspan后面多了个=
      

  12.   

    总之是想在jsp页面中
    进行如下操作
    <%String i="<bean:write name="myForm" property="column">"%>
    结果报错 Syntax error: expected ; (found 'myForm' instead):
      

  13.   

    刚做了实验,java代码是不能嵌套标签的,要么你直接写<%=request.getAttribute("")%>; 要么="<bean:write name="myForm" property="column">写隐藏域里,js取出来,再或者js里<bean:define>一个,然后在<%%>代码中就可以使用了。
      

  14.   

    用el表达式行不?
    <td colspan='${line}'></td>
    有点忘了。
      

  15.   

    后台用request.setAttribult("line",line);
    页面<td colspan='${line}'></td>
    应该可以吧
      

  16.   

    我要没记错的话,你这个问题需要将你要使用的column存入request中,不能存入from里在jsp使用
    存入request中后,在页面<%String column=request.getAttribute("column").toString();%>
    就可以修改变量了