0

リピーターのアイテムを削除するために「imgbtnDeleteGroups」という削除ボタンを非表示にしましたが、「btnDeleteGroups」に imgbtnDeleteGroups が表示されないという問題があります。

<div class="Group">
    <div class="row-fluid">
            <h3 class="font-black">Groups</h3>

    </div>
    <div class="row-fluid bottom clearfix group-div">
        <asp:LinkButton ID="lnkBtnAllGroup" runat="server" OnClick="lnkBtnAllGroup_Click"
        CssClass="btn lts-darkgray">All</asp:LinkButton>
        <asp:Repeater ID="rptGroup" runat="server" OnItemCommand="rptGroup_ItemCommand">
            <ItemTemplate>
                <div class="GroupLink btn lts-blue">
                    <asp:HiddenField ID="hfGroupID" runat="server" Value='<%#  Eval("GroupID") %>'
                    />
                    <asp:LinkButton ID="GroupBTN" runat="server" OnClick="LinkButton1_Click">
                        <%# Eval( "name") %>
                    </asp:LinkButton>
                </div>
                <asp:ImageButton ID="imgbtnDeleteGroups" CssClass="btnDelete hideDeleteBtn"
                runat="server" CommandName="deleteGroup" ImageUrl="~/DesktopModules/ResourceGrouping/img/off.png"
                ClientIDMode="Static" />
            </ItemTemplate>
        </asp:Repeater>
        <div class="groupName">
            <asp:TextBox ID="txtbGroupName" runat="server" placeholder="New Group"></asp:TextBox>
            <asp:Button ID="btnCreateGroup" runat="server" Text="Create Group"
            OnClick="btnCreateGroup_Click" UseSubmitBehavior="false" CssClass="btn lts-green group-dropdown"
            />
            <input id="btnDeleteGroups" type="button" name="" value="Delete Group"
            />
        </div>
        <div class="divbreak">
            <img src="/DesktopModules/ResourceGrouping/img/divbreak-white.png" />
        </div>
    </div>
</div>

Javascript:

  $("#btnDeleteGroups").click(function () {

      //alert("sdvsd");
      $("#Group").find(".btnDelete").removeClass("hideDeleteBtn");

  });
4

3 に答える 3

1

まず第一に、.Groupそれが Web ページのその部分にのみ固有のものでない限り、まったく参照する必要はありません。

それらをすべて見つけたい場合は、.each()関数を使用する必要があります。簡単な例を次に示します。

$(document).ready(function() {  
    $('#btnDeleteGroups').click(function() {  
        $('.btnDelete').each(function() {
            $(this).removeClass("hideDeleteBtn");
        });
    });
});

これは、何が起こる必要があるかを示すjsfiddleです。

于 2013-08-28T21:17:44.360 に答える
0

あなたの HTML コードでは、HTML ID ではなく CSS クラスである<div class="Group">ことがわかります。 だからあなたは書くべきです。jQueryセレクターに 融合できることに注意してください。"Group"
$("div.Group .btnDelete").removeClass("hideDeleteBtn");
find(".btnDelete")

于 2013-08-28T21:07:14.670 に答える
0

リピーターを使用しているので、リピーター名をコントロールに追加すると仮定します。そのコントロールのインスタンスが複数あるため、参照しているコントロールを指定する必要があります。したがって、次のようなものです

$("#btnDeleteGroups").click(function(){
    $("#rptGroup_imgbtnDeleteGroups_" + position).removeClass("hideDeleteBtn");
});

特定の行に属する imgbtndeletegroups が押され、その特定のコントロールからクラスを削除することを指定します。

于 2013-08-28T21:15:29.763 に答える