Javascript dijit/dojo中的调用函数

Javascript dijit/dojo中的调用函数,javascript,dojo,Javascript,Dojo,我对Dojo和Dijit完全陌生。我正试图修复一个大型网站中的一个bug,我也是新手 我想在DateTextBox上调用一个方法(closeDropDown)。我读过一些文件,我认为我理解得足够好,但我就是无法让它发挥作用 在keyEvent中,我得到了DateTextBox: dijit.byId(e.srcElement.id) 根据Chrome控制台,它返回一个对象。当我检查它时(也在控制台中),它看起来还可以 正如我在文档中所读到的,这应该会给我一个Javascript对象。这似乎是正

我对Dojo和Dijit完全陌生。我正试图修复一个大型网站中的一个bug,我也是新手

我想在DateTextBox上调用一个方法(closeDropDown)。我读过一些文件,我认为我理解得足够好,但我就是无法让它发挥作用

在keyEvent中,我得到了DateTextBox:

dijit.byId(e.srcElement.id)
根据Chrome控制台,它返回一个
对象
。当我检查它时(也在控制台中),它看起来还可以

正如我在文档中所读到的,这应该会给我一个Javascript对象。这似乎是正确的

但是,当我尝试时:

dijit.byId(e.srcElement.id).closeDropDown(false)
我得到:
TypeError:Object 2013-01-08没有方法“closeDropDown”


我看不出我错过了什么。一定是我做错了什么根本原因

我刚刚在这个页面
dijit.byId('local').closeDropDown()上试用过,效果很好。您正在使用dojo 1.7,对吗?也许e.src元素不正确。它为对象的declaredClass(
dijit.byId(e.srceelement.id).declaredClass
)打印了什么?应该是dijit.form.datetextbox谢谢你的回答。我用另一种方法解决了这个问题,我可以调用另一种方法。不幸的是,我从未发现为什么closeDropDown不起作用。