0

在行动中,我有一个变量,上面有吸气剂。

private String myActionVariable = "predefined....";
public String getMyActionVariable () {
    return myActionVariable;
}

在 jsp 中,我尝试以这种方式使用我的变量:

<input type="button" class="styledButton" 
       onclick="javascript: doAjax('myActionName',false);" 
       value="${myActionVariable}"

但它没有显示。但是,如果我从同一 jsp 文件中包含的 javascript 代码中输出此变量:

alert (${myActionVariable})

我会得到它的价值......

请问有什么想法吗?...

4

2 回答 2

1

您可以使用<input/>带有 Struts2 标记的标准 HTML 标记<s:property />作为值,如下所示:

<input type="button" class="styledButton" 
       onclick="javascript:doAjax('myActionName',false);" 
       value="<s:property value="%{myActionVariable}"/>"/>

或者直接像这样的 Struts2 标签:

<s:submit type="button" cssClass="styledButton" 
          onclick="javascript: doAjax('myActionName',false);" 
          value="%{myActionVariable}" />

请注意,使用 Struts2 Tag,class属性变为cssClass(并style变为cssStyle),这%{}是正确的 OGNL 语法,而不是${}(即JSTL语法)


编辑:使用 Struts2 时,忘记 JSTL,您将不再需要它们。

于 2012-12-03T15:24:59.647 回答
1

您应该使用 struts2 标签。

<input type="button" class="styledButton" onclick="javascript: doAjax('myActionName',false);" value="${myActionVariable}">

而不是这个,使用

<s:submit type="button" cssClass="styledButton" onClick="javascript: doAjax('myActionName',false);" value= "myActionVariable" />
于 2012-12-03T14:37:52.247 回答