在上面文章的基础上,我们介绍如何操作表单元素中的 复选框和单选框。

一、复选框

<label> <input type="checkbox" id="item" checked> 全选</label>

注意,input标签要放在label标签内,这样点击文字时也会有反映。

如果选中了,调用  $("#item").prop("checked")返回true,否则返回false

同样利用prop方法可以通过js代码来选中或取消选中复选框。

二、单选按钮

1、基本概念

<label><input  type="radio" >男</label>

<label><input  type="radio" >女</label>

上面给出了2个单选按钮。但发现他们两个同时都能选,这个与单选按钮的使用场景不符。可以给它们设置相同的name属性,这样他们就会被看成是一组的,选中状态会互斥。如下面的方式:

<label><input  type="radio"  name="sex">男</label>

<label><input  type="radio"   name="sex">女</label>

注意,这个互斥也只是指在同一个form下。不同的form下的单选按钮,即使name值相同,也不会互斥。

2、获取单个按钮的选中状态

<label><input type="radio" id="item" name="sex">男</label>

$("#item").prop("checked")

3、 对于一组按钮,获取被选中的按钮

单选按钮的应用场景是在一组按钮中获取或设置被选中的按钮。这样首先要为每个按钮设置一个标记。通常是设置按钮的value属性。value属性的值就代表了这个按钮。

<form>

<label><input type="radio" name="sex" value="man">男</label>

<label><input type="radio" name="sex" value="womon">女</label>

</form>

这时,需要给每个radio设置一个不同的value,以便于知道哪个被选中了。

var obj = $("form input:checked");  //获取被选中的按钮

alert(obj.val());  //val方法返回被选中按钮的value属性值

可以连在一起  $("form input:checked").val()  //获取被选中按钮的value属性值

注意,value属性和 checked属性含义完全不同。Checked属性代表按钮的是否被选中的状态。而value属性只是按钮的一个属性,与是否选中无关,往往用来标识一个按钮。

4、通过value属性获取相应的按钮

利用jquery的属性选择器,可以获取对应value属性值的按钮。获取到按钮后,就可以设置按钮的选中状态了。

这个场景经常遇到。比如根据服务器获取的信息,来初始化按钮的选中状态。代码如:

<form>

<label><input type="checkbox"   value="man">男</label>

<label><input type="checkbox"   value="womon">女</label>

</form>

代码如下

var obj = $("input[value=’man’]");  //获取value属性值为man的复选框

alert(obj.prop("checked")); //获取是否被选中

ob.prop("checked",true) //选中该单选按钮

可以看出,利用value属性和checked属性的结合,可以完成对单选按钮组的各种操作。

Jquery学习笔记:操作form表单元素之二(复选框和单选框)的更多相关文章

  1. jQuery操作Form表单元素

    Web开发中常常须要操作表单,form表单元素有select.checkbox.radio.textarea.button.file.text.hidden.password等. 当中checkbox ...

  2. 学习笔记之form表单

    form表单提交的数据 是字典类型 这样 方便在create时候 直接解压

  3. 第83天:jQuery中操作form表单

    操作form表单 1. 属性操作 设置属性: // 第一个参数表示:要设置的属性名称 // 第二个参数表示:该属性名称对应的值 $(selector).attr(“title”, “传智播客”); 获 ...

  4. Ext JS4 学习笔记之发送表单(Form)时也将表单下的表格(Grid)数据一同发送的方法

    Ext JS4 学习笔记之发送表单(Form)时也将表单下的表格(Grid)数据一同发送的方法 昨天在开发的时候遇到个小问题,就是如何将Grid的内容与Form一起发送到服务器端.默认情况下,表单(F ...

  5. 【jQuery】form表单元素序列化为json对象

    序列化form表单元素为json对象: <!Doctype html> <html xmlns=http://www.w3.org/1999/xhtml> <head&g ...

  6. form表单元素的值序列化成对象

    /** * 将form表单元素的值序列化成对象 * param: form jquery form对象 */ var serializeObject = function(form) { var o ...

  7. 将form表单元素的值序列化成对象

    /**jQuery * 将form表单元素的值序列化成对象 * @returns object */ var serializeObject = function(form) { var o = {} ...

  8. jquery实现ajax提交form表单的方法总结

    本篇文章主要是对jquery实现ajax提交form表单的方法进行了总结介绍,需要的朋友可以过来参考下,希望对大家有所帮助 方法一:  function AddHandlingFeeToRefund( ...

  9. form表单元素设置只读

      form表单元素设置只读 CreateTime--2017年5月5日11:42:41 Author:Marydon 1.设置文本框只读 <!-- 方法一:简写 --> <inpu ...

随机推荐

  1. BZOJ 1823: [JSOI2010]满汉全席( 2-sat )

    2-sat...假如一个评委喜好的2样中..其中一样没做, 那另一样就一定要做, 这样去建图..然后跑tarjan. 时间复杂度O((n+m)*K) ------------------------- ...

  2. poj 2965

    http://poj.org/problem?id=2965 本题要结合poj 1753 来看最好...又有了一点搜索的经验..加油... #include <iostream> #inc ...

  3. bootstrap基础知识

    Bootstrap是Twitter推出的一款简洁.直观.强悍的前端开发框架. Bootstrap基于 HTML.CSS.JAVASCRIPT.它由Twitter的设计师Mark Otto和Jacob ...

  4. 转:从pickle看python类成员的动态加载和类的定位

      pickle是Python轻便的对象序列化工具.使用pickle可以方便地把python对象写入文件对象中,或者像soap那样在socket间传送.     按照python的一贯作风,类的成员在 ...

  5. JQ 一些基本方法

    1.判断复选框是否有选中,bischecked 返回 ture 或 false var bischecked = $('[name=uid]').is(':checked'); 2.查看当前元素是父元 ...

  6. 【IE】trim()方法失效

    今天用了$.ajax异步提交,结果在ie8里面报错了,说不支持此对象,找了半天没找到什么问题. 后来发现是我data里面的参数传递,里面有个参数用到了trim()方法,这个方法在ie8里面是失效的. ...

  7. BZOJ 1800 fly-飞行棋

           这道题其实考察的就是从其中能找到几条直径,因为这次数据范围比较小,所以只需设一个二维数组,记录一下每个点及每个点从零开始的位置,最后定一个变量记录周长,最后用个循环搜一下位置小于周长一半 ...

  8. BZOJ 3713: [PA2014]Iloczyn( 枚举 )

    斐波那契数列<10^9的数很少很少...所以直接暴力枚举就行了... ------------------------------------------------------------- ...

  9. PHP中$_FILES的使用方法及注意事项说明

    $_FILES:经由 HTTP POST 文件上传而提交至脚本的变量,类似于旧数组$HTTP_POST_FILES 数组(依然有效,但反对使用)详细信息可参阅 POST方法上传 $_FILES数组内容 ...

  10. 为什么 Flask 有那么多的好评?

    著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.作者:松鼠奥利奥链接:http://www.zhihu.com/question/28902969/answer/42530571来 ...