【问题标题】:Attach Dojo Tooltip by Attribute or Class Instead of ID通过属性或类而不是 ID 附加 Dojo 工具提示
【发布时间】:2013-10-24 13:09:31
【问题描述】:

我在这里看到了答案,但我不明白attaching Tooltip to item without fixed element 'id'

我正在像这样创建我的 Dojo 工具提示:

<script>
require(["dijit/Tooltip", "dojo/domReady!"], function(Tooltip){
    new Tooltip({
        connectId: ["div_1_1_2_1_1_1_2"],
        label: "Please select a Country, Subsidiary before selecting a City."
    });
    new Tooltip({
        connectId: ["div_1_1_2_1_2_1_2"],
        label: "Please select a Country, Subsidiary before selecting a City."
    });
});
</script>

生成了我的div ID,所以我宁愿将工具提示绑定到另一个变量,例如我的属性:

data-viewid="Date_Time_Picker2"

这可能吗?

【问题讨论】:

    标签: javascript dojo tooltip


    【解决方案1】:

    您可以使用dojo/query 按属性查找您的节点。根据 dijit/Tooltip 文档,connectId 可以是 id 或实际的 dom 节点引用。

    HTML:

    <body class="claro">
        <div><span data-viewid="attachATooltipToMe">Test one</span>
        </div>
        <div> <span data-viewid="attachATooltipToMe">Test two</span>
        </div>
        <div> <span data-viewid="attachATooltipToMe">Test three</span>
        </div>
    </body>
    

    JS:

    require(['dojo/query', 'dijit/Tooltip', 'dojo/domReady!'], function (query, Tooltip) {
    
        var nodes = query('[data-viewid="attachATooltipToMe"');
    
        new Tooltip({
            connectId: nodes,
            label: "Please select a Country, Subsidiary before selecting a City."
        });
    });
    

    这会将工具提示附加到每个具有指定值为“attachATooltipToMe”的 data-viewid 属性的节点。

    【讨论】:

    • 就像一个魅力!谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-11-22
    • 2011-01-25
    • 1970-01-01
    • 1970-01-01
    • 2021-03-13
    • 1970-01-01
    相关资源
    最近更新 更多