我正在尝试使用dijit.Fieldset,但它不起作用。在我需要的数组中,我已经包含了“dijit / Fieldset”,并且在函数定义中我将它映射到了Fieldset。我包括的其他东西,如“dijit / form / Button”和“dojo / on”工作正常。但是,当我尝试用这个创建一个Fieldset:
var temp = new Fieldset({ title: "Locations", content: "Blah" });
我收到消息:
对象不支持此操作。
我进入dubug模式,可以看到Fieldset的值只是一个3的int值(我真的不明白)。如果我试图访问是使用dijit.Fieldset我得到相同的错误。然后当我调试并将鼠标悬停在Fieldset上时,我得到undefined的值。 dijit被定义并给出了你在moused结束时所期望的东西。所以,我似乎没有加载dijit.Fieldset。任何人都可以建议吗?我正在使用1.9。
由于
更新
到目前为止,感谢您的帮助。我承认我省略了完整的代码,因为它有点啰嗦,并且不想让人们回答!这是代码 - 另一个忏悔,我不确定这是否被称为dojo命名法中的类或模块。
define([
"dojo/_base/declare",
"dojo/_base/lang",
"dojo/dom-construct",
"dojo/on",
"dojo/html",
"dijit/registry",
"dijit/Fieldset",
"dijit/Tooltip",
"dijit/TooltipDialog",
"dijit/form/DropDownButton",
"dgrid/OnDemandGrid",
"dgrid/Selection",
"dgrid/Keyboard",
"dgrid/extensions/DijitRegistry",
"esri/map",
"esri/tasks/route",
"esri/toolbars/edit",
"dijit/Menu",
"dijit/MenuItem",
"dijit/form/Button",
"my/app/RouteSymbols"
], function (declare, lang, domConstruct, on, html, registry, Fieldset, Tooltip) {
return declare("my.app.RouteUtils", null, {
}
我还认为它在定义中看起来像是一个错误。奇怪的是,所需的模块(dijit / registry和dijit / Tooltip)都正确加载并在页面上正常工作。
关于版本,我使用的是IE9。
再次,谢谢。 西蒙
答案 0 :(得分:0)
如果模块的值是文字值3
,那是因为1.您正在使用工具包的内置版本,并且2.加载程序已将模块识别为不是AMD模块,即使脚本本身已加载,它也没有调用define
函数。
至于为什么dijit/Fieldset
具体发生这种情况,没有看到你正在做什么或者你正在使用什么浏览器(错误消息说IE,但是不可能知道什么版本),这是不可能说的