使用 "document.getElementsByClassName" 自动生成变量并获取值
Generate automatically variable and get values usign "document.getElementsByClassName"
我是java脚本初学者,所以不要对我生气;)
为了简化我的代码,我想自动生成变量并影响它们的当前值以便进一步使用它们。
我所做的和工作的(但我在各种文档上有很多变化的变量):
Html : 输入 a,b,c,... id a,b,c,...
a = Number($('#a').val());
b = Number($('#a').val());
c = Number($('#c').val());
...
我正在尝试做什么:
Html :向我要生成的所有输入添加 class 'test'
var elements = document.getElementsByClassName('test');
elementsLength = elements.length;
for (var i = 0 ; i < elementsLength ; i++) {
elements[i].value = Number($("#"+elements[i].id).val());
}
elements[i].value = Number($("#"+elements[i].id).val());
部分肯定有问题
因为我调用变量a、b或c时,还没有生成。
循环后,
alert (a);
returns [object HTMLInputElement]
而不是我想要得到的值 ;(
我从昨天开始搜索,我松了。
谢谢你们的支持。
++
似乎您想将 INPUTS
的值保留在变量中。我建议您创建一个对象,即 obj
并根据输入创建属性。
var obj = {};
$('button').on('click', function() {
$('.test').each(function() {
obj[$(this).prop('id')] = Number($(this).val());
});
//For debugging
console.clear();
console.log(obj);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="a" class="test">
<input type="text" id="b" class="test">
<input type="text" id="c" class="test">
<button type="button">Click me</button>
我是java脚本初学者,所以不要对我生气;)
为了简化我的代码,我想自动生成变量并影响它们的当前值以便进一步使用它们。
我所做的和工作的(但我在各种文档上有很多变化的变量):
Html : 输入 a,b,c,... id a,b,c,...
a = Number($('#a').val());
b = Number($('#a').val());
c = Number($('#c').val());
...
我正在尝试做什么:
Html :向我要生成的所有输入添加 class 'test'
var elements = document.getElementsByClassName('test');
elementsLength = elements.length;
for (var i = 0 ; i < elementsLength ; i++) {
elements[i].value = Number($("#"+elements[i].id).val());
}
elements[i].value = Number($("#"+elements[i].id).val());
因为我调用变量a、b或c时,还没有生成。 循环后,
alert (a);
returns [object HTMLInputElement]
而不是我想要得到的值 ;(
我从昨天开始搜索,我松了。 谢谢你们的支持。 ++
似乎您想将 INPUTS
的值保留在变量中。我建议您创建一个对象,即 obj
并根据输入创建属性。
var obj = {};
$('button').on('click', function() {
$('.test').each(function() {
obj[$(this).prop('id')] = Number($(this).val());
});
//For debugging
console.clear();
console.log(obj);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" id="a" class="test">
<input type="text" id="b" class="test">
<input type="text" id="c" class="test">
<button type="button">Click me</button>