我有一个网址,该网址每天都会根据今天的日期进行更改,例如:
http://www.newspaper.com/edition/20141227.html
其中20141227的格式为YYYYMMDD。
我可以使用JavaScript包括日期吗?如果可能的话,我该怎么办?
我认为以下步骤将帮助您实现所需的功能
1。将今天的日期或任何日期转换为您所用的预期格式,即“ YYYYMMDD”。
2。然后将其附加到您的URL。
请查看代码段以了解详细信息。请注意,您只需要将鼠标悬停在URL上即可知道它指向的内容。
Date.prototype.toMyString = function () {
//If month/day is single digit value add perfix as 0
function AddZero(obj) {
obj = obj + '';
if (obj.length == 1)
obj = "0" + obj
return obj;
}
var output = "";
output += this.getFullYear();
output += AddZero(this.getMonth()+1);
output += AddZero(this.getDate());
return output;
}
var d = new Date();
var link = document.getElementById("link");
link.setAttribute("href","/yourchoiceofURL?t="+d.toMyString());
<ul>
<li><a id="link" href="#">Any URL</a></li>
</ul>
您可以尝试以下代码。希望这会有所帮助。
var today = new Date();
var dd = today.getDate();
var mm = today.getMonth()+1; //January is 0!
var yyyy = today.getFullYear();
if(dd<10){dd='0'+dd};
if(mm<10){mm='0'+mm};
today = yyyy+mm+dd;
var new_url=document.URL+"/"+today+".html";
console.log(new_url);
这是一个更简单的方法,可以使用
<script>
var link = document.getElementById('link'); // ref. to your anchor tag
var d = new Date,
date = d.getDate(),
month = d.getMonth()+1, // Months in JavaScript are 0 indexed
year = d.getFullYear();
if(date < 10) date = ("0" + date);
if(month < 10) month = ("0" + month);
link.href = ("STATIC_URL/" + year + month + date);//Concatenating three numbers, kind of a hack
</script>
这很简单。
感谢同事的所有答案。对于Dnyanesh,我尝试了http://jsfiddle.net/中的代码可以很好地工作。我尝试进入这样的html页面,为什么不能完美运行。错误在哪里?
<html>
<head>
<script type='text/javascript'>
Date.prototype.toMyString = function () {
//If month/day is single digit value add perfix as 0
function AddZero(obj) {
obj = obj + '';
if (obj.length == 1)
obj = "0" + obj
return obj;
}
var output = "";
output += this.getFullYear();
output += AddZero(this.getMonth()+1);
output += AddZero(this.getDate());
return output;
}
var d = new Date();
var link = document.getElementById("link");
link.setAttribute("href","http://www.pressdisplay.com/pressdisplay/pageview.aspx?issue=1245"+d.toMyString()+"00000000001001");
</script>
</head>
<body>
<a id="link" href="#">Any URL</a>
</body>
</html>
谢谢您,所有推荐的代码都运行良好。如果要放入HTML代码中,请添加以下代码以在浏览器中加载:
//<![CDATA[
window.onload=function(){
....javascript code here....
}//]]>