我需要将日期格式化为荷兰语语言环境(荷兰语,荷兰语)字符串。我发现道场supports这个,但是我无法让它发挥作用。我是一个Javascript新手。不要低估我的幸福。
EDITED
<html>
<title>title</title>
<body>
<SCRIPT TYPE="text/javascript" SRC="http://ajax.googleapis.com/ajax/libs/dojo/1.4/dojo/dojo.xd.js">
</SCRIPT>
<script type="text/javascript">
dojo.require("dojo.date");
dojo.require("dojo.date.locale");
dojo.addOnLoad(function() {
var d = new Date('2009/12/23');
console.log(d, dojo, dojo.date);
var dstr = dojo.date.locale.format(d, {locale:'nl-nl'});
document.write(dstr);
});
</script>
</body>
Firebug打我:
找不到捆绑包:dojo.cldr中的gregorian,locale = nl-nl
(function(){var _1 = null; if((_ 1 ||(typeof .... setTimeout(dojo._loadInit,1000);}})(); \ n
答案 0 :(得分:4)
标准Dojo包附带一系列语言环境。您需要运行脚本来创建缺少的脚本。请参阅Dojo网站上的说明:Built-in locales, adding locales with custom build:
dojo-src/util/buildscripts/cldr
localeList
参数djConfig.locale
或添加djConfig.extraLocale
或者,您可以使用已创建所有本地人的Google CDN版本并定义djConfig.extraLocale。
答案 1 :(得分:4)
<SCRIPT TYPE="text/javascript" SRC="http://ajax.googleapis.com/ajax/libs/dojo/1.4/dojo/dojo.xd.js" djConfig="locale: 'nl'">
如果未指定此选项,则语言环境默认为navigator.language,它是浏览器的已安装语言。离开格式调用的“语言环境”参数是您通常想要做的事情。然后它将只选择该页面的默认值。
答案 2 :(得分:1)
如果您从本地URI包含dojo,那么您的代码将起作用。跨域需求被强制为异步。有关此问题,请参阅此dojo forum post。
您可以使用dojo.addOnLoad
来解决此问题:
dojo.require("dojo.date");
dojo.require("dojo.date.locale");
dojo.addOnLoad(function() {
var d = new Date('2009/12/23');
console.log(d, dojo, dojo.date);
var dstr = dojo.date.locale.format(d, {locale:'nl-nl'});
document.write(dstr);
});
然而,它会抱怨你的语言环境捆绑。但这是另一个故事。
答案 3 :(得分:0)
我厌倦了这个。以DIY方式编码。道场运气好运。
function formatDutchDate(date) {
monthnames = ['januari','februari','maart','april','mei','juni','juli','augustus','september','oktober','november','december'];
monthname = monthnames[date.getMonth()];
return date.getDate()+' '+monthname+' '+date.getFullYear();
}