Может ли кто-нибудь дать Javascript/jQuery для удаления элементов из ASP:CheckBoxList при нажатии кнопки?

Скажем, в списке 3 элемента

<asp:CheckBoxList ID="check" runat="server">
            <asp:ListItemText="Item 1" Value="1"></asp:ListItem>
            <asp:ListItem Text="Item 2" Value="2"></asp:ListItem>
            <asp:ListItem Text="Item 3" Value="3"></asp:ListItem>
        </asp:CheckBoxList>

если пользователь нажимает кнопку, то последний элемент (элемент 3) должен быть удален, а следующий элемент 2 должен быть удален, если пользователь снова нажимает кнопку.


person Abhishek Maurya    schedule 08.09.2014    source источник


Ответы (1)


Это должно сработать для вас. Просто установите свойство onclick кнопки, чтобы оно указывало на эту функцию.

JSFiddle: http://jsfiddle.net/tdg4k07m/

    function remove_last_element()
    {
        var list = document.getElementById('check');
        if (list.children.length > 0)
            list.removeChild(list.children[list.children.length - 1]);
    }
person Matt    schedule 08.09.2014
comment
Это удаляет все элементы, которые я хочу удалить только последним элементом - person Abhishek Maurya; 08.09.2014
comment
Он удаляет только один элемент из списка и сначала проверяет, есть ли он, прежде чем пытаться его удалить. Если бы if был while, то он удалил бы все элементы. - person Matt; 08.09.2014
comment
Это не работает, я пробовал. Пожалуйста, вы тоже попробуйте и дайте правильное решение - person Abhishek Maurya; 08.09.2014
comment
Похоже, в некоторых браузерах генерировались дополнительные элементы, из-за чего функцию нужно было запускать дважды, чтобы удалить элемент. Теперь это исправлено в ответе, для демонстрации включена скрипка. - person Matt; 08.09.2014