我很难访问输入id来进行操作,我有这个:
<input id="id_cot" name="id_cot" type="hidden" value="1">
<input id="id_cot" name="id_cot" type="hidden" value="2">
<input id="id_cot" name="id_cot" type="hidden" value="3">
<input id="id_cot" name="id_cot" type="hidden" value="4">
它是由我的BD生成的,我如何通过JQuery访问例如值4?非常感谢你
答案 0 :(得分:2)
正确的答案是:不要这样做。 id
值在文档中必须是唯一的。如果您对多个元素使用相同的id
,浏览器可以自由地执行他们喜欢的操作。 (他们通常将id
留在元素上,但如果你通过ID查找,则他们会给你第一个。但是他们不必这样做,所以我不依赖它。)
由于它们也有名称,您可以使用选择器input[name=id_cot]
来获取包含所有thos元素的jQuery集,并循环遍历它(或使用eq
来选择其中一个):< / p>
var inputs = $("input[name=id_cot]");
答案 1 :(得分:2)
标识符必须是唯一的,使用重复的ID会导致HTML无效,所以你不应该这样做。
但是,可以使用公共类或属性值选择器(在代码段中提供)。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input name="id_cot" type="hidden" value="1">
<input name="id_cot" type="hidden" value="2">
<input name="id_cot" type="hidden" value="3">
<input name="id_cot" type="hidden" value="4">
&#13;
{{1}}&#13;
答案 2 :(得分:0)
如果你$('#id')
,你将只获得一个元素。你可以做到
$('[id=id_cot]')
获取特定ID的所有元素。然后您可以通过执行以下操作访问元素#4:
$('[id=id_cot]').eq(3).val() // Your value
注意:我们不建议多次使用相同的ID。
更多信息:
答案 3 :(得分:0)
$('.id_cot').each(function(i,v){
console.log("Item in index " + i + " has value " + $(v).val())
})
//to get value at index 4..
console.log("Item in input 4 has value " + $('.id_cot').eq(3).val())// get the element at index 3 to get the value 4 use 3 because index starts with 0
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="id_cot" name="id_cot" class="id_cot" type="hidden" value="1">
<input id="id_cot" name="id_cot" class="id_cot" type="hidden" value="2">
<input id="id_cot" name="id_cot" class="id_cot" type="hidden" value="3">
<input id="id_cot" name="id_cot" class="id_cot" type="hidden" value="4">
使用带索引的类来获取您想要获得的输入