javascript - 使用 onchange jquery 更改对象的值

标签 javascript jquery html css object

我有一个带有过滤器名称的对象,我想在范围 slider 更改时更改对象内的数量

我的 HTML 代码是:

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

和我的 jQuery:

function updateData() {
    var filter = {};
    filter.length = $('#length').val();
    return filter;
}

$('#length, #height, #capacity').change(function () {
   updateData();
   console.log(updateData())
});

下面的代码不工作并返回 1 - 100 之间的数字

最佳答案

这应该可行 - 我稍微重构了您的代码并向外部范围添加了过滤器,以便您可以根据不同的类型更新对象。 Updatedata 现在采用类型和值,并根据目标设置对象键和值。

var filter = { length:0, height:0, capacity:0 };
function updateData(id, value) {
    filter[id] = value;
    return filter;
}

$('#length, #height, #capacity').change(function (e) {
    console.log( updateData(e.target.id, e.target.value) );
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<label for="length">Length</label>
<input id="length" class="border-0" type="range" min="1" max="100"/>
<label for="height">Height</label>
<input id="height" class="border-0" type="range" min="1" max="100"/>
<label for="capacity">Capicity</label>
<input id="capacity" class="border-0" type="range" min="1" max="100"/>

如果您想要“实时”值,请参阅此 Codepen 示例:https://codepen.io/juanbrujo/pen/uIqaw

关于javascript - 使用 onchange jquery 更改对象的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54070026/

相关文章:

javascript - 数据表抛出无效的 JSON 响应

javascript - 鼠标按下 5 秒,清除输入字段

javascript - 使用 jquery 在一定数量的滚动后向元素添加一个类

html - 浏览器之间奇怪的文本换行差异

javascript - 使用 jquery 根据列类名称对表行进行排序

javascript - 使用 d3js 中的用户输入在下拉菜单上创建多个图表

javascript - JQuery 将屏幕移动到特定元素

javascript - 使用ajax创建迭代SQL `INSERT`语句

javascript - 在 JavaScript 创建的输入中获取反斜杠

javascript - jQuery 此选择器不适用于图像