<label for="date1">Drop down Date box:</label>
<input type="text" name="date1" id="date1" value="2005-12-30"
data-dojo-type="dijit/form/DateTextBox"
required="true" />
会发生什么:第三个语句对我不起作用,我得到的结果是一个简单的文本框。 需要什么:我想获得x个日期文本框。从数据库中检索x。
答案 0 :(得分:2)
您可以混合使用旧的dojo声明性语法和较新的html5兼容语法。 &#34;数据 - &#34; piece用于较新的html5语法。
正如OammieR指出的那样,你也不会使用&#34; /&#34;在声明中它应该是&#34;。&#34;。例如,见下文。
<input id="date1" data-dojo-type="dijit.form.DateTextBox"
data-dojo-props="required:true,name:'date1',value:'2005-12-30'" />
答案 1 :(得分:0)
尝试以下
<input type="text"
placeholder="Date of Birth"
name="date"
dojoType="dijit.form.DateTextBox"
required="true"
>
答案 2 :(得分:0)
如果您使用new version(AMD)。 require 时,您必须使用xxx/xxx/xxxx
但在data-dojo-type
中,您必须使用xxx.xxx.xxx
。
答案 3 :(得分:0)
我遇到同样的问题并得到这个解决方案。在声明中使用AMD语法之前,您必须要求用于创建小部件的模块,如: -
首先,您必须要求小部件
require(["dojo/parser","dijit/form/DateTextBox"],function(parser,DateTextBox)
{
parser.parse();
});
作为您的创建小部件声明,您还必须解析您的代码。
在HTML中: -
<label for="date1">Drop down Date box:</label>
<input type="text" name="date1" id="date1" value="2005-12-30"
data-dojo-type="dijit/form/DateTextBox"
required="true" />
现在您可以自由使用xxx / xxx / xxxx或xxx.xxx.xxxx。 我希望这会对你有帮助......
答案 4 :(得分:0)
好吧,如果您使用的是dojo AMD,那么下面是动态添加dijit DateTextBox的代码。
require(["dijit/form/DateTextBox", "dojo/dom-construct", "dojo/domReady!"],function(DateTextBox, domConstruct)
{
var parentNode = domConstruct.create("div", { "class": "container" }, mainContainer); // place this container in your main conatainer.
var Date = new DateTextBox({
name="date1",
id="date1",
value="2005-12-30"
}, parentNode);
});
注意:如果您一次创建此循环或多个日期纠察队,请注意 id ,因为ID应该是唯一的,不应重复。
希望这会对你有所帮助:)。