jquery怎么获取select中的文本值而不是value的值

<option value="11">22</option>



我怎么获取select中的22啊!而不是11

阅读 3.6k
4 个回答

这应该是你要的效果吧,选中后取得被选项的值

<body>
    <select class="dome" name="">
        <option value="aa" selected>11</option>
        <option value="bb">22</option>
        <option value="cc">33</option>
    </select>
    <input type="text" name="result" value="" placeholder="">

    
    
    <script type="text/javascript">
    
    var sel = $('.dome');//下拉菜单
    var result = $('input[name=result]');//文本框
    result.val(sel.find('option[selected]').text());//文本框初始值为一开始就被选中的option项
    
    sel.change(function(event) {//change为选项改变时事件,不要用click那些没用
        result.val($(this).find('option:selected').text());
        event.stopPropagation();
    });
    </script>
</body>

顺便说一句,用<select>不能完全用css改变它的样式,而且加不了动画效果,比如弹出下拉框时抖动,最好是使用模拟select的方式,这样css和js操作更加灵活

$(this).find('option:selected').text()

option也是一个普通的Dom元素,直接innerHTML或textContent就能获取吧

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题