通过js显示多选id

时间:2017-06-28 09:32:47

标签: 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>
  </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>

可以帮助编辑脚本

4 个答案:

答案 0 :(得分:0)

尝试使用jquery的each()函数。并使用TagnameClassName而不是id更改选择器.Id是完整文档的唯一

&#13;
&#13;
$(document).ready(function() {
  $('select').each(function(){
   console.log($(this).val())
  })
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<tr>
  <td>
    <select name="jens_id[]" id="jens_id" required="">
    <option ></option>
    <option selected>1</option>
    <option >2</option>
  </select>
  </td>
</tr>
<tr>
  <td>
    <select name="jens_id[]" id="jens_id" required="">
    <option ></option>
    <option >1</option>
    <option selected>2</option>
  </select>
  </td>
</tr>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

id属性在页面中应该是唯一的,否则只有第一个属性被选中(使用id选择器),因为一组元素使用公共类,而在change事件处理程序中使用{{1}引用点击的元素。

this

答案 2 :(得分:0)

$(document).ready(function() {
  $('.jens_id').change(function() {
    statteId = $('option:selected', this).text()
    alert(statteId);
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select name="jens_id[]" class="jens_id" required="">
    <option ></option>
    <option >1</option>
    <option >2</option>
  </select>

<select name="jens_id[]" class="jens_id" required="">
    <option ></option>
    <option >3</option>
    <option >4</option>
  </select>

  1. ID应该是唯一的,使用类并使用此上下文来告知当前更改的选择

答案 3 :(得分:0)

您现在已经知道页面上元素的ID应该是唯一的。

当你有多个具有相同id的元素时,Removed claim: instance of (P31): siege engine (Q655697) Created claim: subclass of (P279): siege engine (Q655697) 选择器返回第一个匹配的元素。正如在其他答案中提到的那样,如果可能,你应该使用课程

如果您无法使用该类并想要使用ID查找,那么您可以像id(#)$('select#jens_id')一样使用它,并获取所选选项使用上下文{{{ 1}}将找到更改的选择元素的选定选项。

&#13;
&#13;
$('[id="jens_id"]')
&#13;
this
&#13;
&#13;
&#13;

添加$(document).ready(function() { $('select#jens_id').change(function() { alert($(this).find('option:selected').text()); }); });属性以选择是否需要选择多个值。