如果时间小于特定日期和时间,则重定向到另一个页面

时间:2013-05-14 16:37:24

标签: html datetime redirect

我在服务器上没有PHP功能。所以我希望有一种HTML或JS的方式来做到这一点?

基本上,如果时间少于特定日期和时间,我不希望显示某个页面。因此,如果他们浏览到该页面,并且时间少于为此指定的时间,则应该重定向到另一个页面。

我想知道是否可以在不使用JS的情况下完成此操作?主要是因为您可以重定向到<meta>代码

中的其他网页

重定向到Google.com的示例:

<!DOCTYPE HTML PUBLIC "-//SoftQuad//DTD HoTMetaL PRO 4.0::19970714::extensions to HTML 4.0//EN"
 "hmpro4.dtd">

<HTML>

  <HEAD>
    <TITLE>Redirector</TITLE>
    <META HTTP-EQUIV="refresh" CONTENT="0; url=http://www.google.com">
  </HEAD>

  <BODY BGCOLOR="#FFFFFF">
  </BODY>
</HTML>

真的希望这可以在没有JS的情况下完成,因为在某些浏览器上可能会禁用JS。当然,如果没有别的方法可以做到这一点,我想,如果JS被禁用,那么它应该重定向它们,所以他们看不到内容。

对此有任何帮助表示赞赏。

如果有任何帮助,我在网站上有ASP.NET功能。有没有办法检查它?如果是这样,我怎么能这样做?当然,它需要将时间转换为东部标准时间。

2 个答案:

答案 0 :(得分:0)

因为你有.NET功能:

Page_Load (object sender, EventArgs e) // this is the page load, it's there for you already
{
    DateTime someDate = new DateTime(/*day, month, year, etc. Initialize as you like*/);
    if (DateTime.Now < someDate)
    {
        Response.Redirect(/*url of the other page*/);
    }
}

这样做的好处是可以在服务器中使用日期,而不是在客户端计算机上使用日期。

编辑:这是一个C#示例。我对VB.NET太生疏了,无法提供VB替代方案。

再次修改,因为您说您必须转换为EST,您可能需要查看此内容:TimeZoneInfo.ConvertTime

答案 1 :(得分:0)

如果您没有任何服务器功能,可以使用moment.js并执行类似的操作

var now = moment();
var dayToCompare = moment("YYYY-MM-DD"); // Your date to compare
var diffBetweenDates = now.diff(dayToCompare, "hours"); 
/* Could be years   
months  
weeks   
days    
hours   
minutes 
seconds 
milliseconds

*/

if(diffBetweenDates > 0)
{
     window.location = "YourUriToRedirect";
}