jquery 获取下拉框值的问题

查看:90
本文介绍了jquery 获取下拉框值的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

用jquery实现一个功能,当下拉框选择是时,id为"auth"的div不显示;为否时,id为'auth'的div为显示状态.

页面代码:
<div class="form-group">
    <label class="col-sm-4 control-label" for="confirm_password">是否是超级管理员</label>
    <div class="col-sm-5">
        <select class="form-control m-b" name="is_admin"  id="is_admin">
            <option value="1">是</option>
            <option value="0" selected="selected">否</option>
        </select>
    </div>
</div>
<div class="form-group" id="auth" >
    <label class="col-sm-4 control-label">所属权限</label>
    
    </div>
</div>

jquery代码:

        $( document ).ready( function () {
            var is_admin=$("#is_admin").find(":selected").val();
            console.log(is_admin);
            if(is_admin==1){
                $("#auth").hide();
            }else{
                $("#auth").show();
            }

遇到一个问题,console.log(is_admin)只有第一次显示0,以后切换都没有值.我的问题在哪?谢谢

解决方案

需要给select加一个change事件,实时的获取到改变后的结果。
如果你那样写,就相当于你给0加了选中状态,console.log(is_admin)永远是 0, 尽管你的本意是想先设置一个默认值。
页面代码:倒数第二行,你多写了一个</div>
jquery代码:
$( document ).ready( function () {

        $("select").change(function(){
            var is_admin=$("#is_admin").find(":selected").val();
               console.log(is_admin);
               if(is_admin==1){
            $("#auth").hide();
            }else{
                $("#auth").show();
              }
        });          
 });    

这篇关于jquery 获取下拉框值的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆