如果您正在使用 dojo 表单输入并希望为它们添加标签:
<label for="???">Email</label>
<input
type="text"
name="email"
dojoAttachPoint="email"
dojoType="dijit.form.TextBox"
/>
标签不可点击,因为在呈现之前无法知道输入的 ID。
除了在 dojo 为该元素生成的 id 中破解之外,是否存在解决方案?
更新
其实比我想象的还要难,因为dojo中的input域被渲染为
<div class="dijit dijitTextBox" id="widget_dijit_form_TextBox_0">
<input class="dijitReset dijitInputField" value="Χ" type="text" tabindex="-1">
...
</div>
并且底层输入字段没有 id
最佳答案
您是否尝试为输入提供 ID?
<label for="myIdComesHere">Email</label>
<input
id="myIdComesHere"
type="text"
name="email"
dojoAttachPoint="email"
dojoType="dijit.form.TextBox"
/>
如果我没记错的话,dojo.byId(获取 domNode 也就是输入标签)和 dijit.byId(获取 dijit Widget 实例)都可以使用这个 id
关于javascript - 可点击的道场标签,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6878136/