AJAX ASP .NET аккордеон Действие кнопки

У меня есть аккордеон, динамически создающий записи на основе количества записей databind ().
Я пытаюсь прикрепить обработчик и вызвать действие в коде C# позади, когда они нажимают кнопку.
Мне нужно удалить идентификатор, хранящийся в скрытом поле PersonId.
Вот определение аккордеона:

    <asp:Accordion ID="PersonAccordion" runat="server"
        >
        <HeaderTemplate>
            <div class="row">
                <div>
                    <asp:HiddenField ID="PersonId" runat="server" />
                    <asp:Button ID="btnPersonDelete" runat="server" Text="Delete Person"  />
                </div>
            </div>
        </HeaderTemplate>
        <ContentTemplate>
            <div class="row">
                <div id="PersonDetails" runat="server">
                    <div class="row">
                        <div class="col c1-2">
                            <label class="txt-right c1-2">Name</label>
                            <div class="input-txt">
                                <asp:TextBox ID="Name" runat="server"></asp:TextBox>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </ContentTemplate>
    </asp:Accordion>

Вот код позади:

    int group = Convert.ToInt32(Session["group"]);

    //get list of current drivers
    Persons[] persons= Person.Search(group );

    PersonAccordion.DataSource = persons;
    PersonAccordion.DataBind();

1 ответ

  1. У вас должен быть способ выбрать человека, которого вы хотите удалить. Вероятно, лучший способ сделать это-иметь сценарий Javascript в вашем html, который применяет класс стиля к имени, которое нажато, и применяет другой класс к остальным элементам в аккордеоне. В то же время этот скрипт может поместить идентификатор щелкнутого элемента в поле скрытый идентификатор человека. В шаблоне для элементов аккордеона этот сценарий будет помещен в качестве обработчика события click для элемента.