我正在尝试向一个按钮添加一个click事件,该按钮按类查找HTML元素,然后将每个元素添加到一个对象中,其中name属性作为属性名称,value属性作为值。
$(function(){
$('#saveButton').click(function() {
let data = {};
for (elem of $('.className')) {
data[elem.getAttribute('name')] = elem.getAttribute('value');
}
console.log(data);
});
});然而,这只给出了元素的初始值。如果我更改了值(它们是输入字段),并且事件再次被触发,它将找不到更新的值。更让我困惑的是,如果我把console.log(data);移到data的定义下,对象已经有了属性和值,甚至在第一次触发事件时也是如此。我在这里做错了什么?
发布于 2021-01-17 20:46:01
这是你想要做的代码
$('#saveButton').click(function() {
var data = [];
$('.className').each(function(i, obj) {
data[$(this).attr('name')] = $(this).val();
});
console.log(data);
});https://stackoverflow.com/questions/65760615
复制相似问题