将html输入值放入javascript对象
为什么这段代码不给我一个对象,其中键作为文本输入的将html输入值放入javascript对象,javascript,jquery,Javascript,Jquery,为什么这段代码不给我一个对象,其中键作为文本输入的ids,值作为文本输入的值 JS HTML 这是因为您的输入没有type=“text”因此$('input[type=“text”].address')没有返回任何内容 最好添加它们以表示输入是文本类型。这是因为您的输入没有type=“text”,因此$('input[type=“text”].address')不会返回任何内容 最好添加它们以表示输入为文本类型。您的输入没有[type=text]属性,因此您的选择器与它们都不匹配。只需将其移
id
s,值作为文本输入的值
JS
HTML
这是因为您的输入没有
type=“text”
因此$('input[type=“text”].address')
没有返回任何内容
最好添加它们以表示输入是文本类型。这是因为您的输入没有
type=“text”
,因此$('input[type=“text”].address')
不会返回任何内容
最好添加它们以表示输入为文本类型。您的输入没有
[type=text]
属性,因此您的选择器与它们都不匹配。只需将其移除,或使用选择器:
var address = {};
$(':text.address').each(function (index, element) {
address[element.id] = element.value;
});
console.log(address);
()您的输入没有
[type=text]
属性,因此您的选择器与它们都不匹配。只需将其移除,或使用选择器:
var address = {};
$(':text.address').each(function (index, element) {
address[element.id] = element.value;
});
console.log(address);
()使用这个
$('input.address').each(function () {
address[this.id]= $(this).val();
});
演示使用此
$('input.address').each(function () {
address[this.id]= $(this).val();
});
演示jQuery属性选择器(以及浏览器查询选择器)使用DOM元素,而不是它们的属性。如果在输入元素上没有明确的type
属性声明,$(“[type]”)和文档。即使元素的type属性是text
(),querySelector(“[type]”)也不会找到该元素
最简单的解决方案是向HTML中的输入元素添加type=text
。另一种方法是使用不需要此属性定义的其他选择器。最后(也是最不可取的)是创建一个单独的选择器,例如检查元素类型属性的:prop
。但是,这已经以jQuery的:text
的形式存在。jQuery属性选择器(以及浏览器查询选择器)使用DOM元素,而不是它们的属性。如果在输入元素上没有明确的type
属性声明,$(“[type]”)和文档。即使元素的type属性是text
(),querySelector(“[type]”)也不会找到该元素
最简单的解决方案是向HTML中的输入元素添加type=text
。另一种方法是使用不需要此属性定义的其他选择器。最后(也是最不可取的)是创建一个单独的选择器,例如检查元素类型属性的:prop
。然而,这已经以jQuery的:text
的形式存在,请尝试一下这个
试试这个
@ExplosionPills添加了它。@ExplosionPills添加了它。然而,即使添加了它,我仍然只是在控制台中获取对象@托马斯:展开它,你会看到它的属性。您的示例对我很有用。但是,即使添加了它,我仍然只是在控制台中获取对象@托马斯:展开它,你会看到它的属性。你的例子对我很有用。我不知道你为什么会投反对票,但是你能解释一下为什么使用这个
会比jquery的每个(索引,元素){}
更好吗?谢谢好吧,这不是更好,但是在这种情况下不需要索引和元素。不知道为什么会投反对票,但是您能解释一下为什么使用jquery的每个(索引,元素){}
会更好吗?谢谢好吧,这不是更好,但在这种情况下不需要索引和元素,明白了。这很有道理。谢谢,明白了。这很有道理。非常感谢。
$(document).ready(function () {
$('#btn').on('click', function () {
var address = {};
$('.address').each(function (index, element) {
address[element.id] = $(element).val();
});
console.log(address);
});
});