1

我正在创建这个购物清单应用程序。该应用程序运行良好,但我遇到了删除按钮的问题。当我选中复选框时,我想显示一个按钮。它正在当前应用程序中发生,但它正在为列表中的所有项目填充删除按钮。

我只想为我选择的复选框填充它,我的意思是我选择了复选框并应用了删除线。

示例代码 -

/*Checkbox Strikethrough Item Text */
    $('input.check').change(function(){
        $(this).siblings('.item').toggleClass('strike');
        $('.delete_item').removeClass('hidden');
    });

你可以在这个 JS Fiddle 找到完整的工作代码 -

http://jsfiddle.net/varunksaini/Zjxq5/
4

4 回答 4

3
$(this).parents('li').find('.delete_item').removeClass('hidden');

查看单击复选框的父项,搜索与“li”选择器匹配的元素,找到其子项与 delete_item 类并显示它。

于 2013-09-28T13:22:20.080 回答
2

/*Checkbox Strikethrough Item Text */
$('input.check').change(function () {
    $(this).siblings('.item').toggleClass('strike', this.checked);
    $(this).closest('li').find('.delete_item').toggleClass('hidden', !this.checked);
});

演示:小提琴

于 2013-09-28T13:25:19.627 回答
1

你可以这样做:

$('input.check').change(function(){
        $(this).siblings('.item').toggleClass('strike');
        $(this).parent().next().removeClass('hidden');
    });
于 2013-09-28T13:26:52.820 回答
1
$(this).parents('li').children('.delete_item').removeClass('hidden');
于 2013-09-28T13:27:59.903 回答