javascript - 无法获取 HTML 元素的更新值
问题描述
我正在尝试将单击事件添加到按类查找 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
,即使在第一次触发事件时,对象也已经具有属性和值。我在这里做错了什么?
解决方案
这是您要执行的操作的代码
$('#saveButton').click(function() {
var data = [];
$('.className').each(function(i, obj) {
data[$(this).attr('name')] = $(this).val();
});
console.log(data);
});
推荐阅读
- javascript - 如何从 Node.js 中的 Promise 和 async / await 函数返回值
- sql-server - 标识 INT 列已达到 SQL Server 中的最大限制
- python - 在 Python 中提取嵌套的 json/list
- gcc - 如何使用特定的 gcc 版本构建 glib 库
- php - 如何在名称位于会话变量上的视图上显示图像?
- wix - `
` 不起作用 - c# - Windows 中的 setid 等价物?
- javascript - 动态返回配置值(node.js)
- javascript - 如何在javascript中格式化正则表达式
- c# - 向右旋转木马标题