如果找到特定类,如何添加和删除属性
How to Add and remove attribute if found specific class
我有一些列表项,如果我单击任何列表项,它就会通过添加类.selected而被选中如果我在列表项外部单击,则所有列表项都将变为未选中状态。小提琴
我最初也禁用了一个按钮。我想通过在选择列表项时删除"禁用"属性来激活按钮。
同样,如果我单击所有列表项之外,则应取消选择所有列表项,并且按钮再次禁用。我该怎么做?任何帮助将不胜感激。
.JS
$(".list-group-item").click(function() {
$('.list-group-item').removeClass('selected');
$(this).addClass('selected');
});
$(document).on('click', function (e) {
if ($(e.target).closest(".list-group-item, .load-table").length === 0) {
$('.list-group-item').removeClass('selected');
}
});
您缺少的只是如何启用/禁用按钮,那就是
$('.load-table').prop('disabled',false); // or true to disable
因此,只需根据需要将其插入即可
$(".list-group-item").click(function() {
$('.list-group-item').removeClass('selected');
$(this).addClass('selected');
$('.load-table').prop('disabled',false);
});
$(document).on('click', function (e) {
if ($(e.target).closest(".list-group-item, .load-table").length === 0) {
$('.list-group-item').removeClass('selected');
$('.load-table').prop('disabled',true);
}
});
http://jsfiddle.net/has9L9Lh/22/
改用.hasClass()
并设置 else 条件,并禁用和启用按钮使用.prop()
$(".list-group-item").click(function(e) {
e.stopPropagation();
$('.list-group-item').removeClass('selected');
$(this).addClass('selected');
$('.load-table').prop('disabled',false);
});
$(document).on('click', function (e) {
if ($(e.target).hasClass("list-group")) {
$('.list-group-item').removeClass('selected');
}
else{
$('.list-group-item').removeClass('selected');
$('.load-table').prop('disabled',true);
}
});
演示
使用 jquery 的 attr() 属性。
$(".list-group-item").click(function () {
$('.list-group-item').removeClass('selected');
$(this).addClass('selected');
if ($("button").attr("disabled") === "disabled") {
$("button").attr("disabled", false);
}
});
$(document).on('click', function (e) {
if ($(e.target).closest(".list-group-item, .load-table").length === 0) {
$('.list-group-item').removeClass('selected');
$("button").attr("disabled", true);
}
});
上面的代码应该可以工作。单击该项目后,请检查按钮是否仍处于禁用状态。如果是,则启用该按钮。
当用户在列表外部单击时也是如此。
小提琴
相关文章:
- 如果使用 lodash 将属性存在于另一个对象中,则向对象添加属性
- 如何向JSON数组动态添加属性
- 如何在 JavaScript 中以递增顺序在对象中添加属性
- 挖空.js - 向服务器端发送的数据添加属性
- 借助for循环和数组在对象中添加属性
- 新手查询动态添加属性
- 为什么可以'我们在函数体中为函数对象添加属性,就像在javascript中为对象文字添加属性一样
- 使用javascript为网页中的所有图像添加属性
- Javascript - 如何向对象构造函数添加属性
- 向插件添加属性(不是默认方式)
- 如何使用 Ext.js 向内存中的标记添加属性
- Gmaps4rails:如何向 json 添加属性
- 在运行时向 Javascript 对象添加属性
- 从Input Javascript在脚本中添加属性
- JQuery:如何检查复选框是否被选中并向字段添加属性
- 向构造函数或原型添加属性之间的区别
- 向对象动态添加属性
- 无法向按钮添加属性
- 定义一个函数,然后为其添加属性
- 如何通过javarscript或jquery在数组中添加属性复选框(checked=true)