文档章节

Jquery 操作Html 控件 CheckBox、Radio、Select 控件

h
 heiyexue
发布于 2014/06/22 12:29
字数 1628
阅读 100
收藏 19


在使用 Javascript 编写前台脚本的时候,经常会操作 Html 控件,比如 checkbox、radio、select,用 Jquery 库操作其他会方便很多,下面用Jq对这些控件的操作进行一个全面的代码总结。

一、Jquery 对 CheckBox 的操作:

<input id="ckb1" name="ckb" checked="checked" value="0" type="checkbox" /><span>篮球</span> <input id="ckb2" name="ckb" checked="checked" value="1" type="checkbox" /><span>排球</span> <input id="ckb3" name="ckb" disabled="disabled" value="2" type="checkbox" /><span>乒乓球</span> <input id="ckb4" name="ckb" disabled="disabled" value="3" type="checkbox" /><span>羽毛球</span>

1、查找控件:

(1) 选择所有的 checkbox  控件:
根据input类型选择: $("input[type=checkbox]")   等同于文档中的 $("input:checkbox")
根据名称选择:$("input[name=ckb]")

(2) 根据索引获取checkbox控件:
$("input:checkbox:eq(1)")
 结果返回:<input id="ckb2" name="ckb" value="1" type="checkbox" /><span>排球</span>

(3) 获得所有禁用的 checkbox 控件:
$("input[type=checkbox]:disabled") 
结果返回:
<input id="ckb3" name="ckb" disabled="disabled" value="2" type="checkbox" /><span>乒乓球</span>
<input id="ckb4" name="ckb" disabled="disabled" value="3" type="checkbox" /><span>羽毛球</span>
 

(4)获得所有启用的checkbox控件
$("input:checkbox[disabled=false]")
结果返回:
<input id="ckb1" name="ckb" checked="checked" value="0" type="checkbox" /><span>篮球</span>
<input id="ckb2" name="ckb" checked="checked" value="1" type="checkbox" /><span>排球</span> 

(5)获得所有checked的checkbox控件
$("input:checkbox:checked") 
结果返回:
<input id="ckb1" name="ckb" checked="checked" value="0" type="checkbox" /><span>篮球</span>
<input id="ckb2" name="ckb" checked="checked" value="1" type="checkbox" /><span>排球</span> 

(6)获取所有未checkd的checkbox控件
$("input:checkbox:[checked=false]") 
结果返回:
<input id="ckb3" name="ckb" disabled="disabled" value="2" type="checkbox" /><span>乒乓球</span>
<input id="ckb4" name="ckb" disabled="disabled" value="3" type="checkbox" /><span>羽毛球</span> 

(7)获得value 为 0 的checkbox 控件
$("input[type=checkbox][value=0]") 
结果返回:
<input id="ckb1" name="ckb" checked="checked" value="0" type="checkbox" /><span>篮球</span>

2、禁用:

(1)禁用所有的checkbox控件:
$("input:checkbox").attr("disabled", true) 

(2)启用某些禁用的 checkbox 控件:
$("input:checkbox:disabled").attr("disabled", false); 

(3)判断value=0的checkbox是否禁用:
    if ($("input[name=ckb][value=0]").attr("disabled") == true) {
          alert("不可用");
    }
   else {
         alert("可用");
    }

3、选择: 

(1)全选:
$("input:checkbox").attr("checked", true);

(2)全不选:
$("input:checkbox").attr("checked", false); 

(3)反选:
   $("input:checkbox").each(function () {
      if ($(this).attr("checked")) {
        //$(this).removeAttr("checked");
        $(this).attr("checked", false);
     }
     else {
       $(this).attr("checked",true);
    }
  });

4、取值:   

  function GetCkboxValues() {
    var str="";
   $("input:checkbox:checked").each(function () {
     switch ($(this).val()) {
      case "0":
             str += "篮球,";
             break;
     case "1":
             str += "排球,";
      break;
     case "2":
             str += "乒乓球,";
             break;
     case "3":
            str += "羽毛球,";
            break;
     }
   });
   str=str.substring(0, str.length - 1)
  }

二、Jquery 对 Radio 的操作:

<input name="edu" value="0" type="radio" checked="checked" /><span>专科</span> <input name="edu" value="1" type="radio" /><span>本科</span> <input name="edu" value="2" type="radio" disabled="disabled" /><span>研究生</span> <input name="edu" value="3" type="radio" disabled="disabled"/><span>博士生</span>

  1、查找控件:

(1)选择所有的 Radio控件
//根据input类型选择
$("input[type=radio]")  //等同于文档中的 $("input:radio")
//根据名称选择
$("input[name=edu]") 

(2)根据索引获得 Radio控件
$("input:radio:eq(1)")
结果返回:<input name="edu" value="1" type="radio" /><span>本科</span>

(3)获得所有禁用的 Radio 控件
$("input:radio:disabled") 
结果返回:
<input name="edu" value="2" type="radio" disabled="disabled" /><span>研究生</span>
<input name="edu" value="3" type="radio" disabled="disabled"/><span>博士生</span>

(4)获得所有启用的 Radio 控件
$("input:radio[disabled=false]")
结果返回:
<input name="edu" value="0" type="radio" checked="checked" /><span>专科</span>
<input name="edu" value="1" type="radio" /><span>本科</span>

(4)获得checked的 RadioButton 控件
$("input:radio:checked") //等同于 $("input[type=radio][checked]")
结果返回:
<input name="edu" value="0" type="radio" checked="checked" /><span>专科</span>

(5)获取未checked的 RadioButton 控件
$("input:radio[checked=false]").attr("disabled", true);
结果返回:
<input name="edu" value="1" type="radio" /><span>本科</span>
<input name="edu" value="2" type="radio" disabled="disabled" /><span>研究生</span>
<input name="edu" value="3" type="radio" disabled="disabled"/><span>博士生</span>

(6)获得value 为 0 RadioButton 控件
$("input[type=radio][value=0]") 
结果返回:<input name="edu" value="0" type="radio" checked="checked" /><span>专科</span>

2、禁用: 

(1)禁用所有的Radio
$("input:radio").attr("disabled", true);
或者 $("input[name=edu]").attr("disabled", true); 

(2)禁用索引为1的Radio控件
$("input:radio:eq(1)").attr("disabled", true); 

(3)启用禁用的Radio控件
$("input:radio:disabled").attr("disabled", false); 

(4)禁用当前已经启用的Radio控件
$("input:radio[disabled=false]").attr("disabled", true); 

(5)禁用 checked 的RadioButton控件
$("input[type=radio][checked]").attr("disabled", true); 

(6)禁用未checked 的RadioButton控件
$("input:[type=radio][checked=false]").attr("disabled", true); 

(7)禁用value=0 的RadioButton
$("input[type=radio][value=0]").attr("disabled", true); 

3、取值:

$("input:radio:checked").val()

4、选择:

(1)判断value=1 的radio控件是否选中,未选中则选中:
  var v = $("input:radio[value=1]").attr("checked");
  if (!v) {
  $("input:radio[value=1]").attr("checked", true);
  } 

(2)转换成Dom元素数组来进行控制选中:
$("input:radio[name=edu]").get(1).checked = true;

三、Jquery 对 Select 操作

复制代码
<select id="cmbxGame"> <option value="0" selected="selected">黑猫警长</option> <option value="1" disabled="disabled">大头儿子</option> <option value="2">熊出没</option> <option value="3">喜羊羊</option> </select>
复制代码

 1、禁用:

(1)禁用select 控件
$("select").attr("disabled", true);

(2)禁用select中所有option
$("select option").attr("disabled", true);

(3)禁用value=2 的option
$("select option[value=2]").attr("disabled", true);

(4)启用被禁用的option
$("select option:disabled").attr("disabled", false);

2、选择:

(1)option 值为 2 的被选择:
  var v = $("select option[value=2]").attr("selected");
  if (!v) {
  $("select option[value=2]").attr("selected", true);
  }

(2) 索引为 2 的option 项 被选择
$("select")[0].selectedIndex = 2;
或者 $("select").get(0).selectedIndex = 2; 
或者 $("select option[index=2]").attr("selected", true);

3、获取选择项的索引: 

(1)获取选中项索引: jq 中的 get 函数是将jq对象转换成了dom元素
 var selectIndex = $("select").get(0).selectedIndex; 
或者 var selectIndex = $("select option:selected").attr("index");

(2)获取最大项的索引:
var maxIndex = $("select option:last").attr("index") 
或者  var maxIndex = $("select option").length - 1

4、删除select 控件中的option 

(1)清空所有option
$("select option").empty(); 

(2)删除 value=2 的option
$("select option[value=2]").remove(); 

(3)删除第一个option
$("select option[index=0]").remove(); 

(4)删除 text="熊出没" 的option
$("select option[text=熊出没]").remove();  //此方法某些浏览器不支持用下面的方法替代

注意:each 中不能用break 用return false 代替,continue 用 return true 代替
$("select option").each(function () {
  if ($(this).text() == "熊出没") {
  $(this).remove();
  return false;
  }
});

5、在select中插入option 

(1)在首位置插入 option 并选择
$("select").prepend("<option value='0'>请选择</option>");
$("select option[index=0]").attr("selected", true); 

(2)在尾位置插入 option 并选择
$("select").append("<option value=\"5\">哪吒闹海</option>");
var maxIndex = $("select option:last").attr("index")
$("select option[index=" + maxIndex + "]").attr("selected", true); 

(3)在固定位置插入 比如第一个option 项之后插入 新的option 并选择
$("<option value=\"5\">哪吒闹海</option>").insertAfter("select option[index=0]");
或者$("select option[index=0]").after("<option value=\"5\">哪吒闹海</option>");
$("select option[index=1]").attr("selected", true);

6、取值:

  function GetCbxSelected() {
    var v = $("select option:selected").val();
    var t = $("select option:selected").text();
    alert("值:" + v + "文本:" + t);
}

© 著作权归作者所有

共有 人打赏支持
h
粉丝 2
博文 85
码字总数 78924
作品 0
哈尔滨
私信 提问
11个jQuery表单元素美化插件

因为浏览器兼容性的原因,表单元素往往是整个网页设计过程中最难以美化的,尤其是单选按钮、下拉选择框和复选框。不过我们可以通过jquery来美化它样。下面为大家推荐11个简单易用的jQurey插件...

晨曦之光
2012/03/09
0
0
jQuery操作radio、checkbox、select示例

<!DOCTYPE html> <html> <head> <script src="http://code.jquery.com/jquery-latest.js"></script> <script> function show() { //jquery获取单选框的值 alert($('input[type="radio"][nam......

娲城小将
2014/07/29
0
0
转-JQuery选择器及radio,checkbox,select取值和反选

jQuery 的选择器可谓之强大无比,这里简单地总结一下常用的元素查找方法 $("#myELement") 选择id值等于myElement的元素,id值不能重复在文档中只能有一个id值是myElement所以得到的是唯一的元...

huntering
2015/08/25
0
0
jquery form元素操作

jQuery获取Select选择的Text和Value: 语法解释: 1. $("#select_id").change(function(){//code...}); //为Select添加事件,当选择其中一项时触发 2. var checkText=$("#select_id").find("o......

remainvitality
2013/10/25
0
0
Jquery给基本控件的取值、赋值

Jquery给基本控件的取值、赋值 Jquery给基本控件的取值、赋值 TEXTBOX: var str = $('#txt').val(); $('#txt').val("Set Lbl Value"); //文本框,文本区域: $("#text_id").attr("value",'')...

瑞不可挡
2011/01/08
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Sentry使用

Sentry使用 以django为例.实际上sentry本身文档已经有介绍了.这里只是再总结 1、全局异常捕获 此方法可以全局捕获任何的异常(甚至包括你自己raise的异常),在实际使用过程中不太推荐.但胜在快...

_Change_
18分钟前
1
0
linux系统包管理工具详解 yum rpm apt-get pip wget

在Linux系统下,根据系统版本的不同会有各种各样的包管理工具,下面就简单的梳理一下这几种安装命令. 1、yum Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora、RedHat、CentOS中的...

huoyoung
21分钟前
1
0
阿里巴巴Dubbo实现的源码分析

1. Dubbo概述 Dubbo是阿里巴巴开源出来的一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及作为SOA服务治理的方案。它的核心功能包括: #remoting:远程通讯基础,提...

别打我会飞
22分钟前
5
0
tomcat的maxThreads、acceptCount(最大线程数、最大排队数)

tomcat 6的Connector配置如下: <Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" maxThreads......

为了美好的明天
25分钟前
2
0
阿里P9架构师谈:高并发网站的监控系统选型、比较、核心监控指标

在高并发分布式环境下,对于访问量大的业务、接口等,需要及时的监控网站的健康程度,防止网站出现访问缓慢,甚至在特殊情况出现应用服务器雪崩等场景,在高并发场景下网站无法正常访问的情况...

架构师springboot
25分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部