jquery中表单 多选框的一种巧妙写法


Posted in Javascript onSeptember 06, 2015
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
<link href="css/style.css" rel="stylesheet" type="text/css"/>
<script src="../scripts/jquery-1.3.1.js" type="text/javascript"></script>
<script type="text/javascript">
$(function(){
  $("tbody>tr:odd").addClass("odd");
  $("tbody>tr:even").addClass("even");
  $('tbody>tr').click(function(){
    var hasSelected = $(this).hasClass('selected');
    $(this)[hasSelected ? "removeClass" : "addClass"]('selected').find(':checkbox').attr('checked', !hasSelected);
  });
  $('tbody>tr:has(:checked)').addClass('selected');
})
</script>
</head>
<body>
<table>
  <thead>
  <tr>
    <th></th>
    <th>s</th>
    <th>sd</th>
    <th>sdasdsa sda</th>
  </tr>
  </thead>
  <tbody>
  <tr>
    <td><input type="checkbox" name="choice" value=""/></td>
    <td>s</td>
    <td>s</td>
    <td>sdadsadsd</td>
  </tr>
  <tr>
    <td><input type="checkbox" name="choice" value=""/></td>
    <td>sadasdsd</td>
    <td>s</td>
    <td>sads</td>
  </tr>
  <tr>
    <td><input type="checkbox" name="choice" value="" checked='checked'/></td>
    <td>sas</td>
    <td>s</td>
    <td>aasdsad sad</td>
  </tr>
  <tr>
    <td><input type="checkbox" name="choice" value=""/></td>
    <td>ss</td>
    <td>ssad</td>
    <td>dadsadsad</td>
  </tr>
  <tr>
    <td><input type="checkbox" name="choice" value=""/></td>
    <td>Rain</td>
    <td>sd</td>
    <td>sdsad sad asd </td>
  </tr>
  <tr>
    <td><input type="checkbox" name="choice" value=""/></td>
    <td>MAXMAN</td>
    <td>s</td>
    <td>实打实的速度是</td>
  </tr>
  </tbody>
</table>
</body>
</html>

jquery中表单 多选框的一种巧妙写法

radio 写法:

$(function(){
  $("tbody>tr:odd").addClass("odd"); 
  $("tbody>tr:even").addClass("even"); 
  $('tbody>tr').click(function(){
    $(this).addClass('selected').siblings().removeClass('selected').end().find(':radio').attr('checked', true);
  });
// $('table :radio:checked').parent().parent().addClass('selected');
  $('table :radio:checked').parents("tr").addClass('selected');
//$('tbody>tr:has(:checked)').addClass('selected');

})

checkbox写法:

$(function(){
  $("tbody>tr:odd").addClass("odd");
  $("tbody>tr:even").addClass("even"); 
  $('tbody>tr').click(function(){
    if($(this).hasClass('selected')){
      $(this).removeClass('selected').find(':checkbox').attr('checked', false);
    }else{
      $(this).addClass('selected').find(':checkbox').attr('checked', true);
    }
  });
// $('table :checkbox:checked').parent().parent().addClass('selected');
  $('table :checkbox:checked').parents("tr").addClass('selected');
  //$('tbody>tr:has(:checked)').addClass('selected');
})
Javascript 相关文章推荐
javascript 限制输入脚本大全
Nov 03 Javascript
JQuery动态给table添加、删除行 改进版
Jan 19 Javascript
这段js代码得节约你多少时间
Dec 20 Javascript
使用JQuery快速实现Tab的AJAX动态载入(实例讲解)
Dec 11 Javascript
jquery的ajax异步请求接收返回json数据实例
Jun 16 Javascript
深入浅析AngularJS和DataModel
Feb 16 Javascript
vue2.0开发实践总结之疑难篇
Dec 07 Javascript
vue v-on监听事件详解
May 17 Javascript
jQuery实现节点的追加、替换、删除、复制功能示例
Jul 11 jQuery
详解使用Next.js构建服务端渲染应用
Jul 10 Javascript
详解JSON Web Token 入门教程
Jul 30 Javascript
详解vue配置后台接口方式
Mar 29 Javascript
jquery中val()方法是从最后一个选项往前读取的
Sep 06 #Javascript
js实现带缓冲效果的仿QQ面板折叠菜单代码
Sep 06 #Javascript
js实现的Easy Tabs选项卡用法实例
Sep 06 #Javascript
基于jQuery+PHP+Mysql实现在线拍照和在线浏览照片
Sep 06 #Javascript
js实现鼠标点击左上角滑动菜单效果代码
Sep 06 #Javascript
jQuery横向擦除焦点图特效代码分享
Sep 06 #Javascript
利用HTML5的画布Canvas实现刮刮卡效果
Sep 06 #Javascript
You might like
PHP调用MySQL存储过程并返回值的方法
2014/12/26 PHP
PHP CURL或file_get_contents获取网页标题的代码及两者效率的稳定性问题
2015/11/30 PHP
PHP实现将多个文件压缩成zip格式并下载到本地的方法示例
2018/05/23 PHP
PHP如何实现阿里云短信sdk灵活应用在项目中的方法
2019/06/14 PHP
Jquery ajax不能解析json对象,报Invalid JSON错误的原因和解决方法
2010/03/27 Javascript
jQuery 遍历-nextUntil()方法以及prevUntil()方法的使用介绍
2013/04/26 Javascript
用js闭包的方法实现多点标注冒泡示例
2014/05/29 Javascript
node中socket.io的事件使用详解
2014/12/15 Javascript
nodejs中实现路由功能
2014/12/29 NodeJs
js预加载图片方法汇总
2015/06/15 Javascript
jQuery操作复选框(CheckBox)的取值赋值实现代码
2017/01/10 Javascript
nodejs的压缩文件模块archiver用法示例
2017/01/18 NodeJs
javascript 中的继承实例详解
2017/05/05 Javascript
vue使用element-ui的el-input监听不了回车事件的解决方法
2018/01/12 Javascript
js实现ATM机存取款功能
2020/10/27 Javascript
微信小程序如何使用globalData的方法
2019/06/06 Javascript
解决vue项目中页面调用数据 在数据加载完毕之前出现undefined问题
2019/11/14 Javascript
nuxt 自定义 auth 中间件实现令牌的持久化操作
2020/11/05 Javascript
js 数据类型判断的方法
2020/12/03 Javascript
npm全局环境变量配置详解
2020/12/15 Javascript
详细讲解用Python发送SMTP邮件的教程
2015/04/29 Python
从零开始学Python第八周:详解网络编程基础(socket)
2016/12/14 Python
安装Python的教程-Windows
2017/07/22 Python
python3结合openpyxl库实现excel操作的实例代码
2018/09/11 Python
Python2和Python3之间的str处理方式导致乱码的讲解
2019/01/03 Python
Python字符串内置函数功能与用法总结
2019/04/16 Python
Pandas中resample方法详解
2019/07/02 Python
详解python pandas 分组统计的方法
2019/07/30 Python
Django和Flask框架优缺点对比
2019/10/24 Python
PyCharm如何导入python项目的方法
2020/02/06 Python
关于jupyter打开之后不能直接跳转到浏览器的解决方式
2020/04/13 Python
自强之星事迹材料
2014/05/12 职场文书
媒体宣传策划方案
2014/05/25 职场文书
演讲比赛策划方案
2014/06/11 职场文书
先进事迹材料怎么写
2014/12/30 职场文书
如何用Python搭建gRPC服务
2021/06/30 Python