【问题标题】:How to Pass the asp:Label ID from an asp:CheckBox如何从 asp:CheckBox 传递 asp:Label ID
【发布时间】:2017-08-01 04:08:46
【问题描述】:

我浏览了不同的论坛,但找不到允许我调用 asp:Label 的 id 并使用嵌套 asp:CheckBox 中的“onclick”将其传递给 javascript 函数的方法。

我想在 onclick="selectThisDemo2" 调用中同时传递复选框 ID 和标签 ID。代码如下:

<asp:Label ID="lblRace1" runat="server" CssClass="lblDemo2 btn btn-primary">
    <asp:CheckBox ID="cbRace1" CssClass="cbButtons" runat="server" onClick="selectThisDemo2(this.id, this.label.id)" Style="font-weight: normal" />
</asp:Label>

【问题讨论】:

    标签: javascript html asp.net visual-studio


    【解决方案1】:

    您是否考虑过在 selectThisDemo2() 函数中解析您的 ID 属性?

    <asp:CheckBox ID="cbRace1" CssClass="cbButtons" runat="server" onClick='selectThisDemo2()' Style="font-weight: normal" />
    

    并根据触发事件“event.srcElement”(以及相对定位的标签)的元素调整您的函数以解决它们,如下所示:

    function selectThisDemo2(){
         // Get your current element
         var element = event.srcElement;
         // Get it's ID attribute
         var elementId = element.id;
         // Traverse up the generated markup and access your label (and it's ID)
         var labelId = element.parentElement.parentElement.id;
         // Do something here
    }
    

    示例

    function selectThisDemo2() {
      var element = event.srcElement;
      var elementId = element.id;
      var labelId = element.parentElement.parentElement.id;
      // Do something here
      alert(elementId + ',' + labelId);
    }
    <span id="lblRace1" class="lblDemo2 btn btn-primary">
        <span class="cbButtons" style="font-weight: normal">
            <input id="cbRace1" type="checkbox" name="cbRace1" onclick="selectThisDemo2();">
        </span>
    </span>

    【讨论】:

    • 哇,我不知道你能做到这一点!谢谢你打开我的心扉!!! :D
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多