5

您好,我正在尝试让 ASP 中的日期以特定格式 (yyyymmdd) 显示。这是我迄今为止尝试过的,但没有运气。任何帮助表示赞赏。谢谢

<tr>
    <td><b>Call Date</b></td>
    <% for i = -6 to 0 %>
        <td align=center>
            <a href="20a.asp?cldate=<% response.write(DateTime.Date()+i.ToString("yyyyMMdd")) %>" target="_blank">X</a>
        </td>
    <% Next %>
</tr>
4

6 回答 6

8

您可以使用以下功能:

Year(Now) '' Year in 4 digits
Month(Now) '' Month without leading zero
Day(Now) '' Day of the month without leading zero

DateAdd("d", <numofdays>, Now) '' add a number of days to your date

在此处阅读有关这些(和其他日期函数)功能的更多信息。

如果您需要添加前导零:

function addLeadingZero(value)
    addLeadingZero = value
    if value < 10 then
        addLeadingZero = "0" & value
    end if
end function

您的情况的一个例子是:

Dim today, myDate

today = Now

for i = -6 to 0
    myDate = DateAdd("d", i, today)

    response.write "<a href=""20a.asp?cldate=" & Year(myDate) & addLeadingZero(Month(myDate)) & addLeadingZero(Day(myDate)) & """ target=""_blank"">X</a>"
next
于 2012-05-14T09:39:37.853 回答
7

很抱歉挖掘这个,但它可能对某些人有帮助。而不是“如果<10然后添加前导零”逻辑,我经常使用正确的命令并总是添加前导零......

response.write "<a href=""20a.asp?cldate=" & Year(myDate) & Right("0" & Month(myDate), 2) & right("0" & Day(myDate), 2) & """ target=""_blank"">X</a>"

..这样就不需要单独的函数了,一行就可以搞定。我不能说它的效率,但它似乎合乎逻辑。

于 2012-11-20T10:55:36.797 回答
3

ASP 从操作系统而不是从数据库中获取日期,这是一个常见错误,但可以通过以下方式解决:

<%
' Date dd/mm/yyyy
Session.lcid=2057 '= UK English
%>

我希望它可以帮助人们。

于 2013-10-01T05:04:45.533 回答
3

你可以试试。100% 测试!

   <% 
     mm = Month(now())
     dd = Day(now())
     yy = Year(now())
     IF len(mm) = 1 THEN
       mm = "0" & mm
     END IF
     IF len(dd) = 1 THEN
       dd = "0" & dd
     END IF
     response.write(yy & "/" & mm & "/" & dd) 
  %>
于 2014-01-21T08:24:13.763 回答
2
 <%= DatePart("yyyy", Now) & "/" & DatePart("m", Now) & "/" & DatePart("d", Now) %>

另请参阅

http://www.w3schools.com/vbscript/vbscript_ref_functions.asp

http://www.mikesdotnetting.com/Article/22/Date-formatting-in-VBScript

谢谢

迪普

于 2012-05-14T09:04:51.093 回答
1
Mid(date(), 7,4) & "-" & Mid(date(), 4,2) & "-" & Left(date(), 2)
于 2017-06-01T01:42:51.183 回答