Java Struts JSP/html插入当前日期
我的问题与此非常相似: 在我的.jsp页面中,我有一个表单,希望在其中将文本字段预设为当前日期。我唯一的问题是,在使用Struts时,“value”不支持运行时表达式——这很有意义,我希望尽可能多地将Java保留在JSP之外。但这让我很难从动作中提取变量。 我目前正在为Web开发人员运行TomcatV7.0和EclipseJavaEEIDE。版本:开普勒服务发布2 在my.jsp页面中,我有:Java Struts JSP/html插入当前日期,java,html,jsp,struts2,Java,Html,Jsp,Struts2,我的问题与此非常相似: 在我的.jsp页面中,我有一个表单,希望在其中将文本字段预设为当前日期。我唯一的问题是,在使用Struts时,“value”不支持运行时表达式——这很有意义,我希望尽可能多地将Java保留在JSP之外。但这让我很难从动作中提取变量。 我目前正在为Web开发人员运行TomcatV7.0和EclipseJavaEEIDE。版本:开普勒服务发布2 在my.jsp页面中,我有: <s:set var="currentDate" value="currentDate"
<s:set var="currentDate" value="currentDate"/>
<s:property value="currentDate"/>
<s:form action= "updateAction">
<s:textfield name="dateUpdated" key="label.dateUpdated" size="20" value="%{currentDate}" />
<s:submit method="execute" key="submit"/>
</s:form>
此外,在struts.xml中,我还有:
<action name="getCurrentDateAction"
class="net.upsmon.struts2.action.GetCurrentDateAction">
<result name="success">AlertPersistencyView.jsp</result>
</action>
blog以解决我的问题,但仍然没有找到解决方案。
<p id="demo"></p>
<script>
document.getElementById("demo").innerHTML = Date();
</script>
document.getElementById(“demo”).innerHTML=Date();
如果您使用的是JSP,据我所知,JSP是基于问题标题的格式执行的,我会这样设置它的格式(取决于您希望日期的外观如何改变日期的构建方式)。你可以这样做
<%@page import="java.text.SimpleDateFormat, java.util.Calendar, java.text.DateFormat"%>
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Date Tester</title>
</head>
<body>
<%
DateFormat dateFormat = new SimpleDateFormat("MM/dd/yyyy");
Calendar cal = Calendar.getInstance();
%>
<form>
<label for="date">Your Text Field: </label><br/>
<textarea type="" name="date" value="" >Today's Date: <%= dateFormat.format(cal.getTime()) + "\n" %></textarea>
<!-- The rest of your form here -->
</form>
</body>
</html>
日期测试仪
您的文本字段:
今日日期:
我希望这有帮助!如果没有留下评论,我会再试一次。您可以尝试使用并始终避免使用Scriplet元素
示例代码:
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<jsp:useBean id="today" class="java.util.Date" />
<textarea>
<fmt:formatDate value="${today}" pattern="yyyy-MM-dd HH:mm:ss" />
</textarea>
这很好地工作-除了我真的想将它放在s:textfield中,当我这样做时,我得到:根据标记文件中的TLD或属性指令,属性值不接受任何值expressions@user3761189我已经将上面的代码改为使用文本字段而不是输入标记,用户可以尝试一下,看看您喜欢它。让我知道我认为我的问题是因为我在使用struts-非常感谢您迄今为止的帮助。我将更详细地研究它,看看我是否能弄明白-你帮了我很大的忙,虽然我更新了我的问题,使它更符合我的实际问题,我以前的问题写得很糟糕,很抱歉有任何混淆这是一个聪明的主意,但因为我使用的是struts,值将不支持运行时表达式:/n是否尝试过?这是什么。21世纪的涂鸦。你没有回答。你试过了吗?很抱歉耽搁了,你发布的内容仍然不起作用,因为它是一个运行时表达式,“value”标记不接受运行时表达式-我相信解决方案必须包含Struts框架和action类。你能提供一些文本来解释这段代码吗?否则就没有多大帮助
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<jsp:useBean id="today" class="java.util.Date" />
<textarea>
<fmt:formatDate value="${today}" pattern="yyyy-MM-dd HH:mm:ss" />
</textarea>