(Dojo)如何通过使用小部件dijit将焦点设置为相同的输入?

时间:2014-09-20 22:35:06

标签: javascript dojo

我需要通过使用小部件dijit来设置焦点输入。我现在不需要在form._FormWidget中使用属性focus()。

<script type="text/javascript"
src="http://o.aolcdn.com/dojo/1.6/dojo/dojo.xd.js" djConfig="parseOnLoad: true" >
</script>
<script>
dojo.require("dojo.parser");
dojo.require("dijit.form._FormWidget");
dojo.require("dijit.form.Form");    

var ws = new dijit.form._FormWidget();
ws.focus(dijit.byId("company"));
</script>

<input id="company" type="text" name="company" />

这不起作用!请帮助。

如果使用document.getElementById('company')。focus();我有错误Uncaught TypeError:无法读取null的属性'focus'。

1 个答案:

答案 0 :(得分:1)

我不是100%肯定我得到了你所要求的,但是如果你只想集中一个简单的原生HTML输入,只需直接调用focus,就不需要Dojo或Dijit。

document.getElementById('company').focus();

Dijit表单小部件往往有自己的focus方法,它们会为自己的输入做同样的事情。您无法在Dijit小部件上调用focus,以便聚焦小部件本身以外的其他内容。

同时,dijit.byId('company')不会在您的网页上返回任何内容,因为company输入不是 Dijit小部件。