2015-05-27 117 views
1

我正在使用struts2应用程序。在其中一个JSP页面中,我有一个从OGNL表达式中检索值的文本字段标签。当OGNL表达式值为空时,它在文本字段中显示[email protected]。我不想要这个默认值,如果值不可用我想显示只是空的文本框。以下是我的代码。请帮忙。如何避免struts2中textfield的默认值([email protected])

在下面的示例中,当sampletext为空时,我得到一些默认值作为[email protected]的文本字段,但是如果它为空,我想将其显示为空。

JSP:

<%@ page language="java" errorPage="Error.jsp" %> 
<%@ taglib prefix="s" uri="/struts-tags"%> 
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c"%> 
<%@ taglib uri="http://java.sun.com/jstl/fmt" prefix="fmt" %> 
<% 
    String sampletext = ""; 
%> 
<html> 
    <head> 
    </head> 
    <body> 
    <s:set var="remarks"><%=sampletext%></s:set> 
    <s:textfield value="%{remarks}" type="text"></s:textfield> 
    </body> 
</html> 
+0

不要使用scriplets。如果您使用S2标签,则不要使用jstl标签。 –

+0

你的动作中有'remarks'变量吗?如果是的话显示你如何填充它和它的getter/setter。 –

+0

感谢您的回复。是的,我在我的行动中有变数。下面是代码是填充它。只是为了让你知道在行动中填充/设置备注变量是好的,我面临着在文本字段中填充缺省值的问题。 动作类别: 私人字符串备注; public String getRemarks(){ \t \t return remark; \t} \t公共无效setRemarks(字符串备考){ \t \t this.remarks =发言; \t} –

回答

0

你不应该在代码中@AleksandrM提到使用小脚本,但您可以通过以下方式使用JSTL

<c:set var="remarks"><%=sampletext%></c:set> 
<s:textfield value="%{#attr.remarks}"/> 
+0

感谢您的回复。一旦我使用JSTL,它就可以正常工作。 –

+0

而且我会考虑你从代码中删除scriplet的建议。 –

+0

[欢迎来到SO](http://stackoverflow.com/tour)。现在你可以接受答案。 –

相关问题