获得未知数量输入的价值

时间:2018-08-02 08:10:38

标签: javascript jquery html input

所以我有一个主要用PHP生成的网站。在一页上,PHP会生成许多下拉列表,这些下拉列表的数量取决于数据库中的项目。

下拉列表的数量可以更改,但是我希望能够对其进行计数并在JS / Jquery中获取每个下拉列表的值。

目前,所有下拉菜单都具有相同的类名,但我认为我必须尝试为其赋予所有单独的ID。

我知道我可以容纳这样的物品:

var ammount = $(".myclass").length;

我只需要某种遍历这些方法的方式即可获得这样的单个值,而不必每次都获取该类的第一个值:

var input =$(".myclass").value;

我认为我将不得不使用PHP生成的个人ID,但我只是想知道这是否是另一种方式。

任何帮助或建议,将不胜感激。

2 个答案:

答案 0 :(得分:2)

$(".myclass").each(function(i,e) { 
    console.log(e); //e gives you current item in loop
});

$(".myclass").each(function() { 
  console.log($(this).value); 
});

答案 1 :(得分:2)

您可以通过遍历所有这些元素并将其值推入array来获得array中的值:

var vals = [];
$(".myclass").each(function() {
  vals.push($(this).val());
});

如果要获取所有这些输入的总和:

var sum = vals.reduce((a,b) => (+a + +b));

演示:

var vals = [];

$(".myclass").each(function() {
  vals.push($(this).val());
});
console.log(vals);


//Calculating sum of values
var sum = vals.reduce((a,b) => (+a + +b));
console.log(sum);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" class="myclass" value="10" />
<br/>
<input type="text" class="myclass" value="20" />
<br/>
<input type="text" class="myclass" value="30" />
<br/>
<input type="text" class="myclass" value="40" />
<br/>
<input type="text" class="myclass" value="50" />
<br/>