javascript - 自定义复选框切换属性值

标签 javascript attributes selector

我正在尝试构建一个自定义复选框,根据是否选中来添加或减去一个值。即:所有选中的框都被求和。

$("div[active=1]").on("click",function(){
    var itemPrice = $(this).attr("itemprice");
    sum -= Number(itemPrice);
    $("#current_price").html(sum);
    $(this).attr("active","0");
});

$("div[active=0]").on("click",function(){
    var itemPrice = $(this).attr("itemprice");
    sum += Number(itemPrice);
    $("#current_price").html(sum);
    $(this).attr("active","1");
});

我的问题是将框状态更改为“已选中”或“未选中”。我正在使用 $(this).attr("checked",1); 更改单击后的状态。

这是我到目前为止所做的,如您所见,单击 100 框(例如)只会继续添加 100,而不是加/减/加/减......

http://jsfiddle.net/L76xzbLj/

最佳答案

您的点击处理程序不适用于动态更改的对象,请尝试以下操作:

$("body").on("click", "div[active=1]", function(){
    var itemPrice = $(this).attr("itemprice");
    sum -= Number(itemPrice);
    $("#current_price").html(sum);
    $(this).attr("active","0");
});

$("body").on("click", "div[active=0]", function(){
    var itemPrice = $(this).attr("itemprice");
    sum += Number(itemPrice);
    $("#current_price").html(sum);
    $(this).attr("active","1");
});

更新的 fiddle :http://jsfiddle.net/L76xzbLj/7/

关于javascript - 自定义复选框切换属性值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26652987/

相关文章:

javascript - 使用数组中的值填充表行

objective-c - 在未知类型的类中调用静态方法

jquery - 编写多个 "not equal"属性选择器的更简单方法?

java - Selector.wakeup()和 "happens-before"的关系

javascript - 如何从javascript中的html对象访问父文档?

java - 从浮点读取字节(Javascript)

javascript - 更改现有网页以将属性值显示为文本

.NET:获取从特定类派生的所有类

javascript - jQuery:动画宽度/高度,但保持居中

java - 将 bean 写入 jsp 页面中元素的 title 属性