我有一个标识为appointment_stylist_id
的选择字段。出于某种原因,第一个返回我的元素,但第二个返回undefined
:
console.log(dojo.byId('appointment_stylist_id'));
console.log(dijit.byId('appointment_stylist_id'));
知道为什么吗?
答案 0 :(得分:15)
这是因为dojo.byId
做你想要的(找到具有特定ID的DOM元素),而dijit.byId
不这样做。
dijit.byId
是一个按指定名称(id)查找特定小部件的功能。此函数类似于dojo.byId
,但dojo.byId
返回DOMNodes,dijit.byId
返回一个JavaScript对象,该对象是小部件的实例。...
dijit.byId
和dojo.byId
经常混淆,特别是首次使用者。当您希望直接处理窗口小部件的JavaScript对象实例并访问该窗口小部件的功能时,应使用此函数。
http://dojotoolkit.org/reference-guide/dijit/byId.html
答案 1 :(得分:1)
dojo.byId("appointment_stylist_id");
返回元素。
dijit.byId("appointment_stylist_id");
返回小部件。
使用dijit.byId也可以获得元素的值,如:
dijit.byId("appointment_stylist_id").getValue();