我试图在以编程方式添加 domNode 后运行该事件:
<a href="javascript:void(0)" data-dojo-attach-event="click:openRegistration">Register</a>
首次加载页面时,Dojo 不会解析此事件,因为稍后会添加该事件。即使在运行之后
parser.parse();
事件没有运行。我怎样才能运行此事件?
最佳答案
您不希望 dojo 解析器解析页面两次:它会冗余地解析和创建已经创建的内容并导致困惑。要在页面被解析后以编程方式添加节点,请查看 dojo/dom-construct .
require(["dojo/dom-construct", "dojo/domReady!"],
function(domConstruct) {
var openRegistration = function() {
alert("foo");
}
domConstruct.create("a", {
innerHTML: "Register",
click: openRegistration,
href: "javascript:void(0)"
}, document.body);
});
将 document.body 替换为对要插入节点的父节点的引用,并查看放置选项的第 3 个参数。
关于javascript - 如何运行 data-dojo-attach-event?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42005669/