Dojo:NumberSpinner问题

时间:2011-11-01 19:24:21

标签: dojo

我创建了这个NumberSpinner小部件:

<input name="form_action_fy" id="form_action_fy" value="2010" 
    data-dojo-type="dijit.form.NumberSpinner" 
    data-dojo-smallDelta="1" 
    data-dojo-largeDelta="1" 
    data-dojo-constraints="{min:2010,max:2030,places:0}" />

当我加载页面时,窗口小部件按预期显示。但是,有几个问题:

  • 该值为空,而非2010年。

  • 当我按空小部件上的减少按钮时,我得到9000000000000000,当我增加空小部件时,我得到-9000000000000000。它不会坚持指定的最小/最大值。

  • 并且,smallDelta和largeDelta也不起作用。

我在这里做错了什么?

由于 埃里克

1 个答案:

答案 0 :(得分:4)

在新的widget属性样式中,传递给构造函数的属性都放在data-dojo-props属性中,而不是旧的ad-hoc属性。在文档仍指向较旧的声明式样式的情况下,您可以通过查找编程样式示例来获得更好的运气。

<input name="form_action_fy" id="form_action_fy"
    data-dojo-type="dijit.form.NumberSpinner"
    data-dojo-props="
        value:2010,
        smallDelta:5,
        largeDelta:10,
        constraints:{min:2010,max:2200,places:0}"
/>

实例:http://jsfiddle.net/missingno/cQfFt/

请注意,在Dojo 1.6中,一些小部件仍处于转换状态,因此某些属性可能需要以prop和attribute形式复制。尽管如此,事情应该是好的。