第一,得到今天的日期,用途:
var today = new Date;
要获得的组件,使用:
var date = today.getDate();
var month = today.getMonth() + 1; // caveat, starts at 0
var year = today.getFullYear(); // 4 numbers (e.g. 2011)
现在,你需要它的格式yymmdd
。因此,您需要从年份中删除两个第一个数字,并且如果需要,可以在日期和月份前添加0
。
function zeropad(number) {
var str = number.toString(); // number to string
return str.length === 1 // if length is 1
? '0' + str // prepend a 0
: str; // otherwise return string without modification
}
然后:
var formatted = year.toString().substring(2) // only the string from the first two numbers and on
+ zeropad(month) // month with 0 prepended
+ zeropad(date); // date with 0 prepended
然后,在你XHR,使用:
xhr.open("GET", "http://example.com/abc" + formatted + "-data.xml", true);
感谢您的提示。我可以按照您的建议格式化日期,但当我将“date_string”var插入到xml url时,仍然无法检索xml数据。下面是我输入的内容:** bold ** var url =(location.toString().indexOf('file://')!= -1)? 'http://example.com/abc'+ date_string +“-data.xml'; ** bold **然后我用** bold来调用这个var ** xmlhttp.open(GET,url,true)** bold **不知道我哪里错了,但它可能是一个简单的错误在m语法。 – Carlos
@Carlos:使用'alert(url)'或[FireBug](http://getfirebug.com/)查看你的'url'包含的内容。顺便说一句,你可以使用反引号\'在注释中引用代码。 – Andomar
我终于得到它的工作。我必须使用单引号而不是双引号来插入'+ date_string +'变量......非常感谢您的帮助。这里是我的最终代码'code'var url =(location.toString().indexOf('file://')!= -1)的样本? 'http://example.com/abc'+date_string+'data.xml':'fcx'+ date_string +' - data.xml'; \t xmlhttp = new XMLHttpRequest(); \t if(xmlhttp!= null){ \t \t xmlhttp.onreadystatechange = stateChange; \t \t xmlhttp.open('GET',url,true,);'code' – Carlos