Javascript 使用onchange jquery更改对象的值

Javascript 使用onchange jquery更改对象的值,javascript,jquery,html,css,object,Javascript,Jquery,Html,Css,Object,我有一个带有过滤器名称的对象,当范围滑块更改时,我想更改该对象内的数量 我的HTML代码是: <input id="length" class="border-0" type="range" min="1" max="100"/> 下面的代码不起作用,返回一个介于1-100之间的数字。这应该行得通-我对代码进行了一些重构,并在外部范围中添加了过滤器,以便您可以根据不同的类型更新对象。 Updatedata现在接受类型和值,并根据目标设置对象键和值 var-filter={leng

我有一个带有过滤器名称的对象,当范围滑块更改时,我想更改该对象内的数量

我的HTML代码是:

<input id="length" class="border-0" type="range" min="1" max="100"/>

下面的代码不起作用,返回一个介于1-100之间的数字。这应该行得通-我对代码进行了一些重构,并在外部范围中添加了过滤器,以便您可以根据不同的类型更新对象。 Updatedata现在接受类型和值,并根据目标设置对象键和值

var-filter={length:0,height:0,capacity:0};
函数updateData(id、值){
过滤器[id]=值;
回流过滤器;
}
$('长度,'高度,'容量')。更改(函数(e){
log(updateData(e.target.id,e.target.value));
});

长度
高度
能力
试试这个:

filter["length"] = $('#length').val();
这消除了设置实际
length
属性的可能性,但您必须像这样访问属性IIRC:

filter["length"]

在我看来,更改属性名称会更容易,但我已尝试使其尽可能与您的代码相似。

您是否检查了console中的任何错误?您的意思是什么?对我来说效果很好?此代码不提供当前值,更新如果以下答案之一修复了您的问题,您应该接受它(单击相应答案旁边的复选标记)。这可以做两件事。它让每个人都知道您的问题已解决到您满意的程度,并让帮助您的人相信您的帮助。要获得完整的解释,我需要在更改所有ID后返回所有数据。我已修改此答案。检查此小提琴。
filter["length"]