网络编程 
首页 > 网络编程 > 浏览文章

JS实现select选中option触发事件操作示例

(编辑:jimmy 日期: 2024/11/18 浏览:3 次 )

本文实例讲述了JS实现select选中option触发事件操作。分享给大家供大家参考,具体如下:

我们在用到下拉列表框select时,需要对选中的<option>选项触发事件,其实<option>本身没有触发事件方法,我们只有在select里的onchange方法里触发。

想添加一个option的触发事件,在option中添加onclick 点来点去就是不会触发事件

又在select中添加onclick 这下可好了,没选option呢就触发了

百度来的说option没有触发事件,需要在select中加onchange事件,虽然我曾经处理过类似的问题,用过就忘是不是猪脑子....

这次记住了吧应该

当我们触发select的双击事件时,用ondblclick方法。
当我们要取得select的选中事件时,用document.all['name'].value来获取,其中name是select的名称。
如果我们要得到select的全部的值就用一个for循环来实现。代码如下:

var vi = document.all['list'].length;
for(var i=0;i<vi;i++){
  document.form2.list(i).value; //form2是<form>的名称
}

JS实现代码:

"pid" onchange="gradeChange()">
  <option grade="1" value="a">选项一</a>
  <option grade="2" value="b">选项二</a>
</select>
<script type="text/JavaScript">
    function gradeChange(){
    var objS = document.getElementById("pid");
    var grade = objS.options[objS.selectedIndex].grade;
    alert(grade);
    }
</script>

jQuery实现代码:

<select name="myselect" id="myselect">
  <option value="opt1">选项1</option>
  <option value="opt2">选项2</option>
  <option value="opt3">选项3</option>
</select>
$("#myselect").change(function(){
  var opt=$("#myselect").val();
  ...
});

Javascript获取select下拉框选中的值

现在有一id=test的下拉框,怎么拿到选中的那个值呢?

分别使用javascript原生的方法和jquery方法

<select id="test" name="">
 <option value="1">text1</option>
 <option value="2">text2</option>
</select>

代码:

一、javascript原生的方法

1. 拿到select对象:

var myselect=document.getElementById("test");

2. 拿到选中项的索引:

var index=myselect.selectedIndex;
// selectedIndex代表的是你所选中项的index

3. 拿到选中项options的value:

myselect.options[index].value;

4:拿到选中项options的text:

myselect.options[index].text;

二、jquery方法(前提是已经加载了jquery库)

1.获取选中的项

var options=$("#test option:selected");

2.拿到选中项的值

alert(options.val());

3.拿到选中项的文本

alert(options.text());

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript事件相关操作与技巧大全》、《JavaScript操作DOM技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

上一篇:微信小程序中使用ECharts 异步加载数据实现图表功能
下一篇:AngularJs的UI组件ui-Bootstrap之Tooltip和Popover