Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html dijit声明性事件处理程序_Html_Css_Dojo - Fatal编程技术网

Html dijit声明性事件处理程序

Html dijit声明性事件处理程序,html,css,dojo,Html,Css,Dojo,我试图声明一个dijit文本框,但无法将focus事件附加到它 我试着以声明的方式这样做: <div class="midArea_div"> <div class="searchBox_div"> <input type="text" data-dojo-name="searchBox_input" data-dojo-type="dijit.form.TextBox

我试图声明一个
dijit文本框
,但无法将
focus
事件附加到它

我试着以声明的方式这样做:

<div class="midArea_div">
 <div class="searchBox_div">
   <input type="text" data-dojo-name="searchBox_input" data-dojo-type="dijit.form.TextBox" data-dojo-props="placeHolder:'Search...'"class="searchBox"></input>
    <script type="dojo/on" data-dojo-event="onFocus" data-dojo-args="evt">
         alert("hi");
   </script>
 <div class="searchIcon_overlay"></div>
 </div>
</div>

在您的声明性示例中,您使用的是
dojo/on
模块,它自己执行本机DOM事件的规范化。
onFocus
回调是一个Dijit小部件构造(如果您想查看源代码,可以通过_FormMixin将其混合到_WidgetBase中),当小部件因其或其内部的小部件具有焦点或已被单击而变为“活动”时使用

您希望将与事件处理程序一起使用,如下所示:

<script type="dojo/on" data-dojo-event="focus" data-dojo-args="evt">
     alert("hi");
</script>

警报(“hi”);

我看不出你的编程的示例有任何明显的错误,除了你调用
registry.byId(“searchBox\u input”)
时使用的ID(来自你的代码示例)并不存在。也许您应该将
id
键添加到
datadojoprops
或作为
节点上的属性。

在您的声明性示例中,您使用的是
dojo/on
模块,该模块执行其自身的本地DOM事件规范化。
onFocus
回调是一个Dijit小部件构造(如果您想查看源代码,可以通过_FormMixin将其混合到_WidgetBase中),当小部件因其或其内部的小部件具有焦点或已被单击而变为“活动”时使用

您希望将与事件处理程序一起使用,如下所示:

<script type="dojo/on" data-dojo-event="focus" data-dojo-args="evt">
     alert("hi");
</script>

警报(“hi”);

我看不出你的编程的示例有任何明显的错误,除了你调用
registry.byId(“searchBox\u input”)
时使用的ID(来自你的代码示例)并不存在。也许你应该给你的
数据dojo道具添加一个
id
键,或者在你的
节点上添加一个属性。

你的提琴不会运行,因为JSFIDLE使用谷歌托管的dojo库,这会导致maqetta库上出现404。你的提琴不会运行,因为JSFIDLE使用谷歌托管的dojo库,这会导致maqetta libs上出现404。