Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在Struts2中,使用成员值动态生成表单元素名称_Java_Forms_Jsp_Struts2_Ognl - Fatal编程技术网

Java 在Struts2中,使用成员值动态生成表单元素名称

Java 在Struts2中,使用成员值动态生成表单元素名称,java,forms,jsp,struts2,ognl,Java,Forms,Jsp,Struts2,Ognl,我的要求:在Struts2中,使用成员值动态生成表单元素名 我试过: 在web浏览器中生成的代码: 我对web浏览器代码的期望:101作为员工编号仅用于演示 请帮忙,谢谢 在Struts2中,您可以始终在Struts标记的属性中使用OGNL表达式。只需提供值堆栈中的值。您应该知道action bean位于它的顶部,并且具有employeeNumber的getter应该返回所需的值101 <s:textarea name="employee_%{employeeNumber}"/>

我的要求:在Struts2中,使用成员值动态生成表单元素名

我试过:

在web浏览器中生成的代码:

我对web浏览器代码的期望:
<代码>101作为员工编号仅用于演示


请帮忙,谢谢

在Struts2中,您可以始终在Struts标记的属性中使用OGNL表达式。只需提供值堆栈中的值。您应该知道action bean位于它的顶部,并且具有
employeeNumber
的getter应该返回所需的值
101

<s:textarea name="employee_%{employeeNumber}"/>


还要注意的是,Struts不允许在属性中使用有利于OGNL的嵌套标记

试试这个,效果很好

MyAction.class

private int property_value;

public int getProperty_value() {
    return 6;
}

public void setProperty_value(int property_value) {
    this.property_value = property_value;
}
result.jsp

<s:set var="xyz" value="property_value"  />
<s:textarea name="emap_%{#xyz}" />


@Braj等人。注意:我想要动态生成的表单元素“name”。@Braj不是重复的。它们是作用域变量,这不是这个问题所必需的。@Braj请求属性不在值堆栈中,这个问题不会公开任何请求属性,也不会要求
attr
访问它们。@RomanC如何还原我的操作?@Sannidhi OK下次我会处理它。对不起,谢谢你的参与。我知道你的建议(我应该在OP中提到,我的道歉)是一个解决方案,但没有实现,因为在循环中需要生成的变量很少。这就产生了很多临时变量。我赞成你的答案。