Javascript获取多个文本字段的值

时间:2014-02-03 10:16:36

标签: javascript

我有一个动态网页,其内容可能包含1到10个链接,在文本框中提供,类似于以下内容:

<input size="50" id="link" value="http://Something.Something" type="text">
<input size="50" id="link" value="http://SomethingElse.Something" type="text">

我需要javascript才能读取所有链接,并且能够操作数据(存储在数组中,输出到屏幕等)

我知道我可以使用以下

读取单个ID
var link = document.getElementById('link');

哪个会返回第一个匹配 - 但是,我怎么能循环或获取所有链接的所有值,记住链接的数量无法事先确定?

P.S。我尝试过使用getElementsByTagName('input'),但页面上有更多输入,这意味着它获得的结果比我想要的更多。

4 个答案:

答案 0 :(得分:4)

你可以让他们都有名字并按名称搜索。

<input name="vrow" value="0" type="text"/>
<input name="vrow" value="0" type="text"/>
<input name="vrow" value="0" type="text"/>
<input name="vrow" value="0" type="text"/>

然后你可以得到它:

var vrows = document.getElementsByName("vrow");
alert(vrows.length);

答案 1 :(得分:1)

使用 document.getElementsByClassName('class')为他们提供所有公共课程和访问权限。

答案 2 :(得分:1)

每个元素的ID都应该是唯一的。您可以使用document.getElementsByClassNamedocument.querySelectorAll(".class");然后使用类名(假设相对现代的浏览器)。或者使用document.getElementsByTagName()然后迭代与类比较的元素。

答案 3 :(得分:0)

附加一个jQuery lib,您将能够执行以下操作:

$('input[type=text]').each(function(i, val){
    alert($(this).val());
});