我想以dd / MM / yyyy格式显示来自jsp页面中数据库的日期。这是我在javascript中的代码。
$(document).ready(function(){
<%
SDateDTO sDTO = (SDateDTO) request.getAttribute("sDTO");
if(null != scholAvailDTO){
System.out.println(scholAvailDTO.getEndDate());
%>
var end = <%=scholAvailDTO.getEndDate() %>;
$("#endDateId").val(end);
<%
}
%>
});
在控制台中它将于2010年4月27日到来,但在jsp中它的填充量如0.0033582089552238806实际上是日期的分割结果。任何帮助将不胜感激。谢谢,阿米特
答案 0 :(得分:2)
如果getEndDate()
返回java.util.Date
个对象,则使用DateFormat
获取格式化字符串,然后将值包装在引号中,如下所示:
<%DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");%>
var end = "<%=formatter.format(scholAvailDTO.getEndDate()) %>";
如果getEndDate()
返回java.lang.String
,则只需将值包装在引号中,如下所示:
var end = "<%=scholAvailDTO.getEndDate() %>";
答案 1 :(得分:2)
是的 - 您的Javascript可能会以下列方式呈现给浏览器:
var end = 27/04/2010;
如果你希望它是 in a string literal ,那么你需要自己添加引号:
var end = "<%=scholAvailDTO.getEndDate() %>";
请注意,您需要确信值本身没有引号 - 或其他不适合JavaScript的值 - 在那里。我怀疑可能有比上述更好的方法。