Javascript 记录每个输入元素';控制台的名称属性
我有一个HTML表单,我希望将每个输入元素的name属性记录到控制台 我尝试了以下操作,但它只返回某种(jquery)对象,其中包含“stuff” 试试这个伙计Javascript 记录每个输入元素';控制台的名称属性,javascript,jquery,attributes,Javascript,Jquery,Attributes,我有一个HTML表单,我希望将每个输入元素的name属性记录到控制台 我尝试了以下操作,但它只返回某种(jquery)对象,其中包含“stuff” 试试这个伙计 var i, input = $('input'); for (i = 0; i < input.length; i += 1) { console.log(input.eq(i).attr('name')); } vari, 输入=$(‘输入’); 对于(i=0;i
var i,
input = $('input');
for (i = 0; i < input.length; i += 1) {
console.log(input.eq(i).attr('name'));
}
vari,
输入=$(‘输入’);
对于(i=0;i
for循环更快、更可靠 实际上,您发布的函数将返回设置了属性“name”的所有输入的所有值。完成此操作后,它将返回与选择器“input”匹配的整个元素数组,这可能就是您所说的“填充了内容的对象”。我希望这能对您有所帮助。。 这可以捕获每个提交的表单,并将所有提交的值记录在表单中。。。 请确保在部署web之前删除此项。关于安全问题
$(form).on("submit",function(e){
e.preventDefault();
console.log("FORM:"+$(this).serialize());
});
它应该以字符串形式返回所有输入节点的属性名称,请提供示例以复制您的问题。仅供参考,
this.name
将以相同的方式工作,$(':input')
将以所有表单控件为目标。顺便说一句,如果你发布它只是返回某种类型的(jquery)对象,其中充满了“stuff”
?是否有控制台.log($(this.attr('name').value)
?我假设你正在控制台中运行这一切。您确定没有查看正在运行的$('input')
行的输出吗?@DJBurb,否,获取属性的值。那么,什么只返回name属性的值呢?我已经用一个正则表达式完成了这项工作,但由于这似乎是一项微不足道的任务,我想知道为什么脚本会像它那样工作,而不是按照设计的方式工作。您可以使用map
javascript本机函数,使用与您发布的代码完全相同的代码,只需将单词each
替换为map
。jquery之所以这样做是为了提供方法更改,是因为所有jquery函数都返回一个jquery集,这样您就可以在它们上面链接函数<代码>$('div').addClass('wut').removeClass('fud')代码>
$(form).on("submit",function(e){
e.preventDefault();
console.log("FORM:"+$(this).serialize());
});