zoukankan      html  css  js  c++  java
  • jquery中select的应用

    1. //得到select项的个数       
    2. jQuery.fn.size = function(){       
    3.     return jQuery(this).get(0).options.length;       
    4. }       
    5.     
    6. //获得选中项的索引       
    7. jQuery.fn.getSelectedIndex = function(){       
    8.     return jQuery(this).get(0).selectedIndex;       
    9. }       
    10.     
    11. //获得当前选中项的文本       
    12. jQuery.fn.getSelectedText = function(){       
    13.     if(this.size() == 0return "下拉框中无选项";       
    14.     else{       
    15.         var index = this.getSelectedIndex();             
    16.         return jQuery(this).get(0).options[index].text;       
    17.     }       
    18. }       
    19.     
    20. //获得当前选中项的值       
    21. jQuery.fn.getSelectedValue = function(){       
    22.     if(this.size() == 0)        
    23.         return "下拉框中无选中值";       
    24.            
    25.     else    
    26.         return jQuery(this).val();       
    27. }       
    28.     
    29. //设置select中值为value的项为选中       
    30. jQuery.fn.setSelectedValue = function(value){       
    31.     jQuery(this).get(0).value = value;       
    32. }       
    33.     
    34. //设置select中文本为text的第一项被选中       
    35. jQuery.fn.setSelectedText = function(text)       
    36. {       
    37.     var isExist = false;       
    38.     var count = this.size();       
    39.     for(var i=0;i<count;i++)       
    40.     {       
    41.         if(jQuery(this).get(0).options[i].text == text)       
    42.         {       
    43.             jQuery(this).get(0).options[i].selected = true;       
    44.             isExist = true;       
    45.             break;       
    46.         }       
    47.     }       
    48.     if(!isExist)       
    49.     {       
    50.         alert("下拉框中不存在该项");       
    51.     }       
    52. }       
    53. //设置选中指定索引项       
    54. jQuery.fn.setSelectedIndex = function(index)       
    55. {       
    56.     var count = this.size();           
    57.     if(index >= count || index < 0)       
    58.     {       
    59.         alert("选中项索引超出范围");       
    60.     }       
    61.     else    
    62.     {       
    63.         jQuery(this).get(0).selectedIndex = index;       
    64.     }       
    65. }       
    66. //判断select项中是否存在值为value的项       
    67. jQuery.fn.isExistItem = function(value)       
    68. {       
    69.     var isExist = false;       
    70.     var count = this.size();       
    71.     for(var i=0;i<count;i++)       
    72.     {       
    73.         if(jQuery(this).get(0).options[i].value == value)       
    74.         {       
    75.             isExist = true;       
    76.             break;       
    77.         }       
    78.     }       
    79.     return isExist;       
    80. }       
    81. //向select中添加一项,显示内容为text,值为value,如果该项值已存在,则提示       
    82. jQuery.fn.addOption = function(text,value)       
    83. {       
    84.     if(this.isExistItem(value))       
    85.     {       
    86.         alert("待添加项的值已存在");       
    87.     }       
    88.     else    
    89.     {       
    90.         jQuery(this).get(0).options.add(new Option(text,value));       
    91.     }       
    92. }       
    93. //删除select中值为value的项,如果该项不存在,则提示       
    94. jQuery.fn.removeItem = function(value)       
    95. {           
    96.     if(this.isExistItem(value))       
    97.     {       
    98.         var count = this.size();               
    99.         for(var i=0;i<count;i++)       
    100.         {       
    101.             if(jQuery(this).get(0).options[i].value == value)       
    102.             {       
    103.                 jQuery(this).get(0).remove(i);       
    104.                 break;       
    105.             }       
    106.         }               
    107.     }       
    108.     else    
    109.     {       
    110.         alert("待删除的项不存在!");       
    111.     }       
    112. }       
    113. //删除select中指定索引的项       
    114. jQuery.fn.removeIndex = function(index)       
    115. {       
    116.     var count = this.size();       
    117.     if(index >= count || index < 0)       
    118.     {       
    119.         alert("待删除项索引超出范围");       
    120.     }       
    121.     else    
    122.     {       
    123.         jQuery(this).get(0).remove(index);       
    124.     }       
    125. }       
    126. //删除select中选定的项       
    127. jQuery.fn.removeSelected = function()       
    128. {       
    129.     var index = this.getSelectedIndex();       
    130.     this.removeIndex(index);       
    131. }       
    132. //清除select中的所有项       
    133. jQuery.fn.clearAll = function()       
    134. {       
    135.     jQuery(this).get(0).options.length = 0;       
    136. }   

    --------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    原文地址:http://blog.chinaunix.net/u3/111819/showart_2197944.html

    jQuery获取Select选择的Text和Value:
    语法解释:
    1. $("#select_id").change(function(){//code...});   //为Select添加事件,当选择其中一项时触发
    2. var checkText=$("#select_id").find("option:selected").text();  //获取Select选择的Text
    3. var checkValue=$("#select_id").val();  //获取Select选择的Value
    4. var checkIndex=$("#select_id ").get(0).selectedIndex;  //获取Select选择的索引值
    5. var maxIndex=$("#select_id option:last").attr("index");  //获取Select最大的索引值 
    jQuery设置Select选择的 Text和Value:
    语法解释:
    1. $("#select_id ").get(0).selectedIndex=1;  //设置Select索引值为1的项选中
    2. $("#select_id ").val(4);   // 设置Select的Value值为4的项选中
    3. $("#select_id option[text='jQuery']").attr("selected", true);   //设置Select的Text值为jQuery的项选中
    jQuery添加/删除Select的Option项:
    语法解释:
    1. $("#select_id").append("<option value='Value'>Text</option>");  //为Select追加一个Option(下拉项)
    2. $("#select_id").prepend("<option value='0'>请选择</option>");  //为Select插入一个Option(第一个位置)
    3. $("#select_id option:last").remove();  //删除Select中索引值最大Option(最后一个)
    4. $("#select_id option[index='0']").remove();  //删除Select中索引值为0的Option(第一个)
    5. $("#select_id option[value='3']").remove();  //删除Select中Value='3'的Option
    5. $("#select_id option[text='4']").remove();  //删除Select中Text='4'的Option
     
     

    http://www.cnblogs.com/SAL2928/archive/2008/10/28/1321285.html

    jquery radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中,及其相关 
    获 取一组radio被选中项的值 
    var item = $('input[@name=items][@checked]').val(); 
    获 取select被选中项的文本 
    var item = $("select[@name=items] option[@selected]").text(); 
    select下拉框的第二个元素为当前选中值 
    $('#select_id')[0].selectedIndex = 1; 
    radio单选组的第二个元素为当前选中值 
    $('input[@name=items]').get(1).checked = true; 

    获取值: 

    文本框,文本区域:$("#txt").attr("value"); 
    多选框 checkbox:$("#checkbox_id").attr("value"); 
    单选组radio:   $("input[@type=radio][@checked]").val(); 
    下拉框select: $('#sel').val(); 

    控制表单元素: 
    文本框,文本区域:$("#txt").attr("value",'');//清空内容 
    $("#txt").attr("value",'11');//填充内容 

    多选框checkbox: $("#chk1").attr("checked",'');//不打勾 
    $("#chk2").attr("checked",true);//打勾 
    if($("#chk1").attr('checked')==undefined) //判断是否已经打勾 

    单选组 radio:    $("input[@type=radio]").attr("checked",'2');//设置value=2的项目为当前选中项 
    下拉框 select:   $("#sel").attr("value",'-sel3');//设置value=-sel3的项目为当前选中项 
    $("<option value='1'>1111</option><option value='2'>2222</option>").appendTo("#sel")//添加下拉框的option 
    $("#sel").empty();//清空下拉框

    ------------------------------------------------------------------------------------------------------------------

    //遍历option和添加、移除option
    function changeShipMethod(shipping){
    var len = $("select[@name=ISHIPTYPE] option").length
    if(shipping.value != "CA"){
    $("select[@name=ISHIPTYPE] option").each(function(){
    if($(this).val() == 111){
    $(this).remove();
    }
    });
    }else{
    $("<option value='111'>UPS Ground</option>").appendTo($("select[@name=ISHIPTYPE]"));
    }
    }


    //取得下拉選單的選取值

    $(#testSelect option:selected').text();
    或$("#testSelect").find('option:selected').text();
    或$("#testSelect").val();
    //////////////////////////////////////////////////////////////////
    记 性不好的可以收藏下:
    1,下拉框:

    var cc1 = $(".formc select[@name='country'] option[@selected]").text(); //得到下拉菜单的选中项的文本(注意中间有空格)
    var cc2 = $('.formc select[@name="country"]').val(); //得到下拉菜单的选中项的值
    var cc3 = $('.formc select[@name="country"]').attr("id"); //得到下拉菜单的选中项的ID属性值
    $("#select").empty();//清空下拉框 //$("#select").html('');
    $("<option value='1'>1111</option>").appendTo("#select")//添加下拉框的option

    稍微解释一下:
    1.select[@name='country'] option[@selected] 表示具有name 属性,
    并 且该属性值为'country' 的select元素 里面的具有selected 属性的option 元素;
    可以看出有@开头的就表示后面跟 的是属性。

    2,单选框:
    $("input[@type=radio][@checked]").val(); //得到单选框的 选中项的值(注意中间没有空格)
    $("input[@type=radio][@value=2]").attr("checked",'checked'); //设置单选框value=2的为选中状态.(注意中间没有空格)

    3,复选框:
    $("input[@type=checkbox][@checked]").val(); //得到复选框的选中的第一项的值
    $("input[@type=checkbox][@checked]").each(function() { //由于复选框一般选中的是多个,所以可以循环输出
    alert($(this).val());
    });

    $("#chk1").attr("checked",'');//不打勾
    $("#chk2").attr("checked",true);// 打勾
    if($("#chk1").attr('checked')==undefined){} //判断是否已经打勾


    当然jquery的选择器是强大的. 还有很多方法.

    <script src="jquery-1.2.1.js" type="text/javascript"></script>
    <script language="javascript" type="text/javascript">
    $(document).ready(function(){
    $("#selectTest").change(function()
    {
    //alert("Hello");
    //alert($("#selectTest").attr("name"));
    //$("a").attr("href","xx.html");
    //window.location.href="xx.html";
    //alert($("#selectTest").val());
    alert($("#selectTest option[@selected]").text());
    $("#selectTest").attr("value", "2");

    });
    });
    </script>


    <a href="#">aaass</a>

    <!--下拉框-->
    <select id="selectTest" name="selectTest">
    <option value="1">11</option>
    <option value="2">22</option>
    <option value="3">33</option>
    <option value="4">44</option>
    <option value="5">55</option>
    <option value="6">66</option>
    </select>
    jquery radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中,及其相关获取一组radio被选中 项的值
    var item = $('input[@name=items][@checked]').val();
    获取select被选 中项的文本
    var item = $("select[@name=items] option[@selected]").text();
    select 下拉框的第二个元素为当前选中值
    $('#select_id')[0].selectedIndex = 1;
    radio单选组的第二个 元素为当前选中值
    $('input[@name=items]').get(1).checked = true;
    获取值:
    文本 框,文本区域:$("#txt").attr("value");
    多选框 checkbox:$("#checkbox_id").attr("value");
    单选组radio: $("input[@type=radio][@checked]").val();
    下拉框select: $('#sel').val();
    控 制表单元素:
    文本框,文本区域:$("#txt").attr("value",'');//清空内容
    $("#txt").attr("value",'11');// 填充内容
    多选框checkbox: $("#chk1").attr("checked",'');//不打勾
    $("#chk2").attr("checked",true);// 打勾
    if($("#chk1").attr('checked')==undefined) //判断是否已经打勾
    单选组radio: $("input[@type=radio]").attr("checked",'2');//设置value=2的项目为当前选中项
    下拉框 select: $("#sel").attr("value",'-sel3');//设置value=-sel3的项目为当前选中项
    $("<optionvalue='1'& gt;1111</option><optionvalue='2'>2222</option& gt;").appendTo("#sel")//添加下拉框的option
    $("#sel").empty();// 清空下拉框

    获取一组radio被选中项的值
    var item = $('input[@name=items][@checked]').val();
    获取select被选中项的文本
    var item = $("select[@name=items] option[@selected]").text();
    select下拉框的第二个元素为当 前选中值
    $('#select_id')[0].selectedIndex = 1;
    radio单选组的第二个元素为当前选中值
    $('input[@name=items]').get(1).checked = true;
    获取值:
    文本框,文本区域:$("#txt").attr("value");
    多选框 checkbox:$("#checkbox_id").attr("value");
    单选组radio: $("input[@type=radio][@checked]").val();
    下拉框select: $('#sel').val();
    控 制表单元素:
    文本框,文本区域:$("#txt").attr("value",'');//清空内容
    $("#txt").attr("value",'11');// 填充内容
    多选框checkbox: $("#chk1").attr("checked",'');//不打勾
    $("#chk2").attr("checked",true);// 打勾
    if($("#chk1").attr('checked')==undefined) //判断是否已经打勾
    单选组radio: $("input[@type=radio]").attr("checked",'2');//设置value=2的项目为当前选中项
    下拉框 select: $("#sel").attr("value",'-sel3');//设置value=-sel3的项目为当前选中项
    $("<option value='1'>1111</option><option value='2'>2222</option>").appendTo("#sel")//添加下拉框的option
    $("#sel").empty();// 清空下拉框

  • 相关阅读:
    面向对象先导课感想
    【LATEX】个人版latex论文模板
    【前端】wangEditor(富文本编辑器) 简易使用示例
    【前端】ACE Editor(代码编辑器) 简易使用示例
    苦果:像专家一样思考,像外行一样实践
    Matplotlib cheatsheet
    版本控制最佳实践cheatsheet
    “左手程序员、右手作家”Jupyter Notebook Cheatsheet
    Pandas DataWrangling cheatsheet(数据整理 )
    Numpy basic sheatsheet
  • 原文地址:https://www.cnblogs.com/renshen555/p/3693291.html
Copyright © 2011-2022 走看看