使用javascript获取特定列表框选定值

时间:2016-01-30 12:17:21

标签: javascript html ajax

我有html列表框,它具有相同的名称,但ID不同

<select name="dept"  id="vrow" >
                        <option selected="selected" > - Select Department- </option>
                        <option value="GEN">computer </option>
                        <option value="SC">mac </option>
                        <option value="ST">civ </option>
                        <option value="OBC">ele </option>
                      </select>

我已经对从数据库中提取的每一行进行了考试, 如果我更改了特定的列表框值,我怎么能得到ID。

3 个答案:

答案 0 :(得分:1)

如果您需要ID,请使用:

document.getElementById('vrow').addEventListener('change', function(e) {
   if (e.target.name==='dept') {
     alert(e.target.id);
   }
})

Working Demo

如果您需要价值,请使用:

document.getElementById('vrow').addEventListener('change', function(e){
   if (e.target.name==='dept') {
       alert(e.target.value);
   }
})

Working Demo

答案 1 :(得分:0)

您可以将change事件的事件监听器添加到所有<select>元素的父节点,如果它们在列表中,则可以ul,甚至body

<script type="text/javascript">
  document.getElementByTagName('UL').addEventListener('change', function(e) {
    if (e.target.name==='dept') {
      //In this case you have got element that you need and its id 
      //e.target.id
      alert(e.target.id);
    }
  });
</script>

答案 2 :(得分:0)

您编写Javascript函数或Jquery函数

像这样

<select onchange="dept(this.value)" name="dept"  id="vrow" >
<option selected="selected" > - Select Department- </option>
<option value="GEN">computer </option>
<option value="SC">mac </option>
<option value="ST">civ </option>
<option value="OBC">ele </option>
</select>

<script type="text/javascript">
function dept(id){
$.ajax({
url: 'ajax.php',
data: { id: id} ,
success: function (response) {
try{
alert(response);
}
catch(e){
alert("Error"+e);
}
},
error: function (e) {
alert("error"+e); or alert("error"+JSON.stringify(e));
}
});
}
</script>

Ajax.php