如何将scriplet生成的日期设置为<s:textfield>中的默认值?

问题描述 投票:0回答:2

我的 JSP 中有这个 scriplet,我希望它以某种方式作为默认值包含在我的

<s:textfield>
中。

<%java.text.DateFormat df = new java.text.SimpleDateFormat("yyyy/MM/dd"); %> 

如何访问变量

df
?我是这样想的:

<s:textfield name="mediaBean.acquireDate" style="width:150px;" 
        theme="simple" id="datepicker" type="text" 
        value="%{df.format(new java.util.Date())}" />

我尝试将其直接作为

value="%{new java.util.Date()}
并且它有效,但没有格式。我想要
yyyy/MM/dd
格式。

jsp date struts2 textfield
2个回答
3
投票

不要使用 scriplet,使用标签库。你想要的可以用 Struts2 标签

<s:date>
<s:param>
来完成。

<s:textfield name="mediaBean.acquireDate" style="width:150px;" theme="simple" id="datepicker" type="text">
  <s:param name="value">
    <s:date name="new java.util.Date()" format="yyyy/MM/dd"/>
  </s:param>
</s:textfield>

2
投票

像这样设置脚本变量

<s:set var="df" value="%{new java.text.SimpleDateFormat('yyyy/MM/dd')}"/> 

然后参考它

<s:textfield name="mediaBean.acquireDate" style="width:150px;" 
        theme="simple" id="datepicker" type="text" 
        value="%{#df.format(new java.util.Date())}" />
© www.soinside.com 2019 - 2024. All rights reserved.