zoukankan      html  css  js  c++  java
  • Jquery 操作 Select 详解

    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”, 说的更确切一些是应该是jQuery控制 “option”, 看下面的jQuery代码:

    
    
    
    <select id="test">
    <option value="1">选项一<option>
    <option value="2">选项一<option>
                              ...
    <option value="n">选项N<option>
    </select>
    
    
    
    

    
    
    
    //获取第一个option的值
    $('#test option:first').val();
    
    //最后一个option的值
    $('#test option:last').val();
    
    //获取第二个option的值
    $('#test option:eq(1)').val();
    
    //获取选中的值
    $('#test').val();
    $('#test option:selected').val();
    
    //设置值为2的option为选中状态
    $('#test').attr('value','2');
    
    //设置最后一个option为选中
    $('#test option:last').attr('selected','selected');
    $("#test").attr('value' , $('#test option:last').val());
    $("#test").attr('value' , $('#test option').eq($('#test option').length - 1).val());
    
    //获取select的长度
    $('#test option').length;
    
    //添加一个option
    $("#test").append("<option value='n+1'>第N+1项</option>");
    $("<option value='n+1'>第N+1项</option>").appendTo("#test");
    
    //添除选中项
    $('#test option:selected').remove();
    
    //删除项选中(这里删除第一项)
    $('#test option:first').remove();、
    
    //指定值被删除
    $('#test option').each(function(){
        if( $(this).val() == '5'){
             $(this).remove();
         }
    });
    $('#test option[value=5]').remove();
    
    //获取第一个Group的标签
    $('#test optgroup:eq(0)').attr('label');
    
    //获取第二group下面第一个option的值
    $('#test optgroup:eq(1) : option:eq(0)').val();
    
    
    
    

  • 相关阅读:
    Android 内存溢出解决方案(OOM) 整理总结
    mysql数据库基本操作
    java基础集合框架——List、Set、Map概述(java集合一)
    Android基础常用日期操作工具类
    Android 中的adapter和作用以及常见的adapter
    Android中的SimpleAdapter
    android中selector使用
    Android 中消息处理机制-Looper、Handler、Thread(一)
    Android 中消息处理机制-Looper、Handler、Thread (二)
    android中MessageQueue , Message , Looper , Handler(三)
  • 原文地址:https://www.cnblogs.com/molashaonian/p/7242026.html
Copyright © 2011-2022 走看看