经常会遇到js控制radio选中和切换的问题

之前一直使用的是checked属性来完成的

但是现在发现这个属性有个大问题

今天就是用js给选中radio的赋值,使用的$().attr("checked",true);

当切换的时候,把name相同的radio的attr("checked",false),再把要选中的radio.attr("checked",true);

但是问题来了,每个radio只能被赋值一次,当第二次给他赋值的时候,赋不上值

后来发现,checkbox在这种情况下会出现一样的问题

于是仔细查了一下这个属性发现了问题

w3cshool上关于这个属性的介绍

可以看到,关键点在于被预先选定的input元素

也就是说这个属性原来就是打算页面加载的时候为了让radio有一个默认的值而增加的一个属性,这样有了这个属性的input在页面加载的时候就是选定的

所以当要切换input的时候,这个属性显然就不太合适了

所以在使用js对radio进行赋值切换的时候,推荐大家使用

1.$().prop("checked",true)

使用prop方法并搭配checked属性实现js点击radio

prop方法适用于set和get值为true/false的属性的方法如checked selected readyonly

而且不需要对未点击的radio做处理 很方便

2.$().click()

这个方法就比较干脆,直接出发点击事件,不会出现问题

这两个方法效果上一样

from:http://blog.csdn.net/u014267351/article/details/50333425

js控制radio选中的更多相关文章

  1. js控制select选中显示不同表单内容

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  2. JQuery控制radio选中和不选中方法总结

    一.设置选中方法 代码如下: $("input[name='名字']").get(0).checked=true; $("input[name='名字']"). ...

  3. jquery控制radio选中

    好久没写jquery了,昨天下午写一个效果,结果倒腾了半天还是没有解决,好在今天早上在网上询问到解决方法了,现在果断记录下. 要实现的效果就是交易方式选择时不同的交易方式下默认选中第一个选项. 如下: ...

  4. js设置radio选中

    在页面数据绑定时,经常会遇到给radio设置选中,以下是我写的js方法,经测试可以使用.欢迎拍砖 <html> <head> <script type="tex ...

  5. js jquery radio 选中 选中值

    radio示例: <label><input type="radio" name="type" id="type" val ...

  6. js控制单选按钮选中某一项

    <!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>& ...

  7. js 控制radio选项

    <input type="radio" name="rk" value="aaa" />1<input type=&quo ...

  8. js取消radio选中 反选

    var radio=document.createElement("input");radio.type="radio";radio.onclick = fun ...

  9. js获取radio选中索引值

    <form name="form1" onsubmit="return foo()"> <input type="radio&quo ...

随机推荐

  1. PHP-根据字符串和所用字体计算字符串所占宽高

    今天由于用GD画图, 需要把一段文字在一个框内居中, 但是文字的宽度如果用strlen($str) * $font_size来计算的话, 由于文字不是等宽高的, 所以会导致偏离, 最后选用的GD库的i ...

  2. Ubuntu下设置redis让其他服务器访问

    修改redis配置文件,将 bind 127.0.0.1to bind 0.0.0.0Then restart your service (service redis-server restart) ...

  3. jasmine-行为驱动测试

    http://jasmine.github.io/1.3/introduction.html,先保留着,好好研究.

  4. C#:复选框操作类

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.W ...

  5. 构造矩阵解决这个问题 【nyoj299 Matrix Power Series】

    矩阵的又一个新使用方法,构造矩阵进行高速幂. 比方拿 nyoj299 Matrix Power Series 来说 给出这样一个递推式: S = A + A2 + A3 + - + Ak. 让你求s. ...

  6. JEECG技术总结

    1.用户数据迁移时,必须在表t_s_base_user和t_s_user中都插入数据才会在页面显示.2.执行sql语句: String sql = "select count(id) fro ...

  7. django abstract base class ---- 抽象基类

    抽象蕨类用于定义一些同享的列.类本身并不会在数据库端有表与之对应 一.例子: 1.定义一个叫Person 的抽象基类.Student 继承自Person from django.db import m ...

  8. C++代码优化方法总结

    C++代码优化方法总结 优化是一个非常大的主题,本文并不是去深入探讨性能分析理论,算法的效率,况且我也没有这个能力.我只是想把一些可以简单的应用到你的C++代码中 的优化技术总结在这里,这样,当你遇到 ...

  9. MySQL主从不一致的几种故障总结分析、解决和预防

    (1).主从不一致故障,从库宕机,从库启动后重复写入数据报错解决与预防:relay_log_info_repository=TABLE(InnoDB)参数解释说明:若relay_log_info_re ...

  10. Angularjs Directive - Compile vs. Link

    如果我想实现这样一个功能,当一个input失去光标焦点时(blur),执行一些语句,比如当输入用户名后,向后台发ajax请求查询用户名是否已经存在,好有及时的页面相应. 输入 hellobug  失去 ...