美文网首页让前端飞IT@程序员猿媛
JS实现select选中option触发事件操作示例

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

作者: 88b61f4ab233 | 来源:发表于2019-03-07 14:34 被阅读11次

    本文实例讲述了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实现代码:

    ‍‍<select id="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");
    
    1. 拿到选中项的索引:
    var index=myselect.selectedIndex;
    // selectedIndex代表的是你所选中项的index
    
    1. 拿到选中项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());
    

    最后

    为了帮助大家让学习变得轻松、高效,给大家免费分享一大批资料,帮助大家在成为全栈工程师,乃至架构师的路上披荆斩棘。在这里给大家推荐一个前端全栈学习交流圈:866109386.欢迎大家进群交流讨论,学习交流,共同进步。

    当真正开始学习的时候难免不知道从哪入手,导致效率低下影响继续学习的信心。

    但最重要的是不知道哪些技术需要重点掌握,学习时频繁踩坑,最终浪费大量时间,所以有有效资源还是很有必要的。

    最后祝福所有遇到瓶疾且不知道怎么办的前端程序员们,祝福大家在往后的工作与面试中一切顺利。


    相关文章

      网友评论

        本文标题:JS实现select选中option触发事件操作示例

        本文链接:https://www.haomeiwen.com/subject/kvucpqtx.html