jQuery取得select选择的文本与值

<select class="selector"></select>

1、设置value为pxx的项选中

     $(".selector").val("pxx");

2、设置text为pxx的项选中

    $(".selector").find("option[text='pxx']").attr("selected",true);

    这里有一个中括号的用法,中括号里的等号的前面是属性名称,不用加引号。很多时候,中括号的运用可以使得逻辑变得很简单。

3、获取当前选中项的value

    $(".selector").val();

4、获取当前选中项的text

    $(".selector").find("option:selected").text();

    这里用到了冒号,掌握它的用法并举一反三也会让代码变得简洁。


很多时候用到select的级联,即第二个select的值随着第一个select选中的值变化。这在jquery中是非常简单的。

如:$(".selector1").change(function(){

     // 先清空第二个

      $(".selector2").empty();

     // 实际的应用中,这里的option一般都是用循环生成多个了

      var option = $("<option>").val(1).text("pxx");

    $(".selector2").append(option);

    });



    ///==============

    jquery获取select选择的文本与值
    获取select :
    获取select 选中的 text :
    $("#ddlregtype").find("option:selected").text();

    获取select选中的 value:
    $("#ddlregtype ").val();

    获取select选中的索引:
    $("#ddlregtype ").get(0).selectedindex;

    设置select:
    设置select 选中的索引:
    $("#ddlregtype ").get(0).selectedindex=index;//index为索引值

    设置select 选中的value:
    $("#ddlregtype ").attr("value","normal“);
    $("#ddlregtype ").val("normal");
    $("#ddlregtype ").get(0).value = value;

    设置select 选中的text:

    var count=$("#ddlregtype option").length;
    for(var i=0;i<count;i++)
    {           if($("#ddlregtype ").get(0).options[i].text == text)
    {
    $("#ddlregtype ").get(0).options[i].selected = true;
    break;
    }
    }
    $("#select_id option[text='jquery']").attr("selected", true);

    设置select option项:

    $("#select_id").append("<option value='value'>text</option>");  //添加一项option
    $("#select_id").prepend("<option value='0'>请选择</option>"); //在前面插入一项option
    $("#select_id option:last").remove(); //删除索引值最大的option
    $("#select_id option[index='0']").remove();//删除索引值为0的option
    $("#select_id option[value='3']").remove(); //删除值为3的option
    $("#select_id option[text='4']").remove(); //删除text值为4的option

清空 select:

    $("#ddlregtype ").empty();

工作需要,要获得两个表单中的值。如图:

如何获得从左边选择框添加到右边选择框中的值?我想了想用网页特效可以获得,这里用了比较流行的jquery。
js代码如下:

    //获取所有属性值 var item = $("#select1").val();
    $(function(){
      $('#select1').each(  //获得select1的所有值
         function(){
            $('button').click(function(){
                alert($('#select2').val());  //获得select2中的select1值
            });
         });
    })
    </script>

值得注意的是,不能直接写成

$(function(){
    $('#select2').each(  //获得select1的所有值,因为前面讲选项从左边添加到右边,jquery其实并没有真正将值从左边传到右边。
            function(){
                $('button').click(function(){
                    alert($(this).val());  //获得select2中的select1值
                });
            });
})

html:
<div class="centent">
        <select multiple="multiple" id="select1" name="dd" style="width:100px;height:160px;">
        <option value="1">选项1</option>
        <option value="2">选项2</option>
        <option value="3">选项3</option>
        <option value="4">选项4</option>
        <option value="5">选项5</option>
        <option value="6">选项6</option>
        <option value="7">选项7</option>
        </select>
        <div>
        <span id="add" >选中添加到右边&gt;&gt;</span>
        <span id="add_all" >全部添加到右边&gt;&gt;</span>
        </div>
        </div>
        <div class="centent">
        <select multiple="multiple" id="select2" name="sel" style="width: 100px;height:160px;">
        </select>
        <div>
        <span id="remove">&lt;&lt;选中删除到左边</span>
        <span id="remove_all">&lt;&lt;全部删除到左边</span>
        </div>
        </div>

// 使用JQuery,Ajax调用动态填充Select的option选项

//绑定ClassLevel1单击事件
$("#ClassLevel1").change(function () {
    var id = $("#ClassLevel1").val();
    var level2 = $("#ClassLevel2");
    level2.empty();
    $("#ClassLevel3").hide();
    $.ajax({
        url: "./askCommon.ashx?action=getclasslevel&pid=" + id,
        data: { "type": "ajax" },
        datatype: "json",
        type: "get",
        success: function (data) {
            var json = eval_r(data);
            for (var ind in json) {
                level2.append($("<option value='" + json[ind].id + "'>" + json[ind].typename + "</option>"));
            }

        }
    });
})
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值