1

我正在尝试将标志变量传递到节点,在该节点中验证标志是否为真,然后执行 dojo.connect(标志、onclick、回调)。其他跳过回调函数。

4

1 回答 1

1

节点基本上是组成 HTML 的每个元素的 DOM 对象表示。

查看官方 Dojo Toolkit 的文档以了解其功能: https ://dojotoolkit.org/reference-guide/1.10/dojo/connect.html

您尚未指定,但我想您在 1.6 中使用 Dojo,这是一种古老的做法,因为我们在其结构功能中实现了 AMD 架构,您必须有这样的东西:

// Saving your handle
var handle = dojo.connect(node, "onclick", callback);
// Removing the handle
dojo.disconnect(handle);

当您使用时,dojo.connect(flag, onclick, callback)我们假定您有一个元素,一个 DOM 节点(在本例中为“标志”)。

在 Dojo 1.6 或更早的版本中,您可以通过它的 ID 获取节点,例如:(一些官方文档:https ://dojotoolkit.org/api/#dojo.byId )

// Here's your node (by ID)   
var my_node = dojo.byId("foo");

希望对您的理解有所帮助。

你需要这样的东西吗?

// Your custom callback
function your_callback_function() {
  // You business rules, in this case:
  if (dojo.query('#your_flag:checked')) {
    // Do something..
  }
}

// binding event to the DOM-node and callback 
var handle = dojo.connect(dojo.byID("your_flag"), "onclick", your_callback_function);

您可以在以下位置查看更多关于 < 1.6 版本 Dojo Events 的功能:https ://dojotoolkit.org/reference-guide/1.6/dojo/index.html#events

我建议您了解更多关于 AMD 和 Dojo 的新功能,因为它的变化。

于 2016-09-08T14:54:30.840 回答