Javascript 通过js显示多选id
我需要通过js显示选择id,通过这个代码只显示1和第一个选择id 我的代码是html和javascriptJavascript 通过js显示多选id,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我需要通过js显示选择id,通过这个代码只显示1和第一个选择id 我的代码是html和javascript <tr> <td> <select name="jens_id[]" id="jens_id" required="" > <option ></option> <option >1</option> <option >2</option> </
<tr>
<td>
<select name="jens_id[]" id="jens_id" required="" >
<option ></option>
<option >1</option>
<option >2</option>
</select>
</td>
</tr>
<tr>
<td>
<select name="jens_id[]" id="jens_id" required="" >
<option ></option>
<option >1</option>
<option >2</option>
</select>
</td>
</tr>
<script>
$(document).ready(function(){
$('#jens_id').change(function(){
statteId = $("#jens_id").val()
alert(statteId);
});
});
</script>
1.
2.
1.
2.
$(文档).ready(函数(){
$('#jens_id')。更改(函数(){
statteId=$(“#jens_id”).val()
警报(statteId);
});
});
可以帮助编辑脚本尝试使用jquery的each()
函数。并使用标记名
或ClassName
更改选择器,而不是id
。id对于完整文档是唯一的
$(文档).ready(函数(){
$('select')。每个(函数(){
console.log($(this.val())
})
});代码>
1.
2.
1.
2.
页面中的id
属性应该是唯一的,否则只选择第一个属性(使用id选择器),因为一组元素使用公共类,而在更改事件处理程序中使用此
来引用单击的元素
1.
2.
1.
2.
$(文档).ready(函数(){
//或者使用属性等于选择器
//$('[name=“jens_id[]]”)
$('.jens_id').change(function(){
statteId=$(this.val();//或this.value
控制台日志(statteId);
//获取td并使用值更新
$(this).parent().next().text(statteId);
});
});
$(文档).ready(函数(){
$('.jens_id').change(function(){
statteId=$('option:selected',this).text()
警报(statteId);
});
});代码>
1.
2.
3.
4.
您现在已经知道页面上元素的id应该是唯一的
当您有多个id相同的元素时,id(#)
selector返回第一个匹配的元素。因此,如其他答案中所述,如果可能,您应该使用class
无论出于何种原因,如果您无法使用该类并希望使用id查找,那么您可以像$('select#jens_id')
或$('[id=“jens_id”]')
一样使用它,并使用上下文来查找所选选项,以此将查找已更改的select元素的所选选项
$(文档).ready(函数(){
$('select#jens_id')。更改(函数(){
警报($(this).find('option:selected').text());
});
});代码>
1.
2.
3.
4.
您已将id=“jens\u id”
用于和
。id应该是唯一的。。使用类并使用此上下文也使用1您在html标记中没有值。您可以在您的代码中相应地更改它谢谢1询问我需要在新中显示此id没有警报可以帮助您这样做当您声明id应该是唯一的时您是对的,但是即使在多个标记中使用了一个id,$(“[id=“+yourid+”])将选择所有标记,只有#的id选择器在第一次查找时停止。@LajosArpad:我知道,但这是一种不好的做法:)@PranavCBalan我完全同意你的看法,但必须提到这个事实。