Javascript Jquery根据输入更改重新计算所有其他输入

Javascript Jquery根据输入更改重新计算所有其他输入,javascript,jquery,input,each,Javascript,Jquery,Input,Each,我正在尝试创建批量价格更改表单,但无法选择当前价格 我尝试用更新。每个函数,但它不会在输入更改时更新。(当前Fiyat+miktar未按预期工作) 我已经为我的表格创建了一支笔;它可以告诉你更多: $(文档).ready(函数(){ $('c-siteprice')。在('input',function()上{ var miktar=$(this.val(); $('.samount').html(miktar); $('.sfinal').show(); $(“.sfinalprice”)。

我正在尝试创建批量价格更改表单,但无法选择当前价格

我尝试用更新。每个函数,但它不会在输入更改时更新。(当前Fiyat+miktar未按预期工作)

我已经为我的表格创建了一支笔;它可以告诉你更多:

$(文档).ready(函数(){
$('c-siteprice')。在('input',function()上{
var miktar=$(this.val();
$('.samount').html(miktar);
$('.sfinal').show();
$(“.sfinalprice”)。每个(函数(){
var currentfiyat=$(this.val();
var newfiyat=当前Fiyat+miktar;
$('.sfinalprice').val(newfiyat);
});
});
$('.sdo')。在('click',function()上{
if($(this).val()=='s-add'){
var islem=“”;
}else if($(this).val()='s-tract'){
var islem=“”;
}else if($(this).val()=='s-change'){
var islem=“”;
}
$('.sadorremove').html(islem);
});
});
/*body{padding:15px;}*/
img{
最大宽度:150px;
高度:自动;
}
/*li:悬停{背景色:#D8E8F5;}
li:悬停ul li{背景色:#fff;}*/
李:悬停ul李:悬停{
背景色:#D8E8F5;
}
.navbar品牌img{
最大高度:200%;
利润上限:-10px;
}
人力资源{
边缘顶部:12px;
边缘底部:12px;
}
.btn链路{
填充:6px 1px;
}

添加
减去
改变
INC国际概念人造毛皮交叉带拖鞋(黑色,S)
19.49
= 
20.82
INC国际概念公司蓬松人造毛皮拖鞋(象牙色,L)
9.60
= 
10
INC国际概念公司蓬松人造毛皮拖鞋(象牙色,XL码)
9.60
= 
10
INC国际概念饮料图标丝绒拖鞋(黑色,L/M)
9.60
= 
10.91
INC International Concepts女式爱情丝绒拖鞋(浅粉色,XL码)
9.60
= 
10.91
INC International Concepts人造马拉布滑拖鞋(中粉红色,长/米)
23.38
= 
24.99
INC International Concepts女式流苏拖鞋(Leopard,s)
11.51
= 
13.08
INC International Concepts女式人造马拉布滑拖鞋(Wine,M)
11.51
= 
13.08
INC International Concepts女式流苏拖鞋(Leopard,M)
11.51
= 
13.08

有两件事你应该考虑

  • 您应该将值从
    string
    解析为
    float
    就像
    parseFloat(miktar)
  • 您应该添加一个数据属性来归档单价,如
    data unitprice=“19.49”
    ,然后您可以获得值,如
    var unitprice=$(item)。数据('unitprice')
  • 查看下面的实时演示

    $(文档).ready(函数(){
    $('c-siteprice')。在('input',function()上{
    var miktar=$(this.val();
    $('.samount').html(miktar);
    $('.sfinal').show();
    美元(“.sfinalprice”)。每个(功能(索引,项目){
    var单价=$(项目)。数据(“单价”);
    var newfiyat=parseFloat(单价)+parseFloat(米克塔尔);
    美元(项目).val(新菲亚特);
    });
    });
    $('.sdo')。在('click',function()上{
    if($(this).val()=='s-add'){
    var islem=“”;
    }else if($(this).val()='s-tract'){
    var islem=“”;
    }else if($(this).val()=='s-change'){
    var islem=“”;
    }
    $('.sadorremove').html(islem);
    });
    });
    
    /*body{padding:15px;}*/
    img{
    最大宽度:150px;
    高度:自动;
    }
    /*li:悬停{背景色:#D8E8F5;}
    li:悬停ul li{背景色:#fff;}*/
    李:悬停ul李:悬停{
    背景色:#D8E8F5;
    }
    .navbar品牌img{
    最大高度:200%;
    利润上限:-10px;
    }
    人力资源{
    边缘顶部:12px;
    边缘底部:12px;
    }
    .btn链路{
    填充:6px 1px;
    }
    
    添加
    减去
    改变
    INC国际概念人造毛皮交叉带拖鞋(黑色,S)
    19.49
    = 
    20.82
    INC国际概念公司蓬松人造毛皮拖鞋(象牙色,L)
    9.60
    = 
    10
    
    我给你写了一个片段。我还为您的代码
    $(this.val(newfiyat))选择了一个更新的jQuery投票关闭此问题,因为它是由打字错误或无法再复制的问题引起的。虽然类似的问题可能在这里的主题,这是一个解决的方式不太可能帮助未来的读者。感谢更新我的文章,它似乎更可读的方式。我的问题不是打字错误,但我不能确切地说出它是什么。我也相信这个表单可以被其他初学者使用,并帮助未来的读者。这种形式太复杂了,未来的游客不会感兴趣,VAR是土耳其语的。您还需要将值转换为数字:
    var newfiyat=+currentfiyat++miktar谢谢你的回答,我相信我们即将实现我的目标。但我有两个问题;1-)当我试图键入一个数字(F
    
    $(".sfinalprice").each(function(index, item) {
           var unitPrice = $(item).data('unitprice');
           var newfiyat = parseFloat(unitPrice) + parseFloat(miktar);
    
           $(item).val(newfiyat);
    });