1

我有一个带有不同选项卡(ContentPanes)的 TabContainer。当用户从树中选择某些内容时,我会动态加载每种类型。我希望能够在新加载的 ContentPane/Tab 上运行某个 JS 函数。所以这种形式的东西:

dojo.forEach(
    dojo.query("select"),
        function(selectTag) {
            selectTag.disabled = true;
    }
);

但是,我只想在新加载的 ContentPane/Tab 上处理它......所以假设给定一个 ContentPane/Tab Dojo 对象,我如何仅对其内容执行 forEach/query?

谢谢

4

1 回答 1

2

您可以提供dojo.query第二个参数,告诉它从哪个 DOM 节点开始查找。因此,如果您有一个 ID 为“fooTab”的 ContentPane,您可以执行以下操作:

dojo.forEach(dojo.query("select", "fooTab"), 
    function(selectTag) {
        ....
    }
);

现在,从技术上讲,“fooTab”是“dijit ID”,但 dijit/ContentPane 的最外层 DOM 节点也将有一个 id “fooTab”。也许不是犹太教的方式,但它有效。

于 2011-07-08T15:23:52.407 回答