这章本来准备写成jQuery的表单操作和表格操作的。

然而昨天吧jQuery的表单操作看完,发现全部在炒之前章节的剩饭,所以就没写出来。

那么今天就来看看表格吧。

因为平常做的都是公司的内部管理系统,所以说数据表格用到的还是比较多的。那么在这里写出来说不定还能用上。

关于jQuery的表格应用

  • 隔行变色

    $(function(){
    $("tbody>tr:odd").addClass("样式1");//odd是选取奇数行
    $("tbody>tr:even").addClass("样式2");//even是选取偶数行
    })
  • 单选框控制表格行高亮
    $('tbody>tr').click(function(){
    $(this).addClass('选中样式').siblings().removeClass('选中样式').end().find(':radio').attr('checked',true);
    //请注意这里的end(),当用了siblings()后,后面所有的元素实际上操作的是this的统计元素,而用了end()后就回到了之前的$(this)元素
    });
    //注意到我们最开始初始化表格的时候,如果默认有单选框被选中,那么也需要进行处理。
    $(table :radio:checked).parent().parent().addClass('selected');
    //或者
    $(table :radio:checked).parents("tr").addClass('selected');
    //或者
    $(table>tr:has(:checked)).addClass('selected');
  • 复选框控制表格行高亮
    //最简单的那种就不写了,看看下面这种
    $('tbody>tr').click(function(){
    //判断当前是否选中
    var hasSelected=$(this).hasClass('selected');
    $(this)[hasSelected?"removeClass":"addClass"]('selected')
    .find(':checkbox').attr("checked",!hasSelected);
    });
    //本示例突出[hasSelected?"removeClass":"addClass"]这种玩法
    //这实际上就是javascript的用法,因为一个对象里面的东西既可以用.这样的形式取出来,又可以用类似数组的形式取出来
  • 表格展开关闭
    //这种情况就是解决表格里面行数据有层级结构的
    $(function(){
    $('tr .parent').click(function(){
    $(this).toggleClass("selected")
    .siblings('.child_'+this.id).toggle();
    })
    })
  • 表格内容筛选
    //下面是表格的筛选操作
    $(function(){
    $("#filterName").keyup(function(){
    $("table tbody tr").hide()
    .filter(":contains('"+($(this).val())+"')").show();
    });
    });
    //这种一般都是用不上,因为我们要的表格一般都是翻页的,然后去后台查筛选,然后传数据给前台。

好吧,这本书本章的其他节都是在炒剩饭,唯一新用到的函数是

var $div_li=$("li");
$div_li.click(function(){
var index=$div_li.index(this);//这种用法很有趣,其次就是index这个函数,是用于在选择出来的元素中,然后根据元素来获取元素的索引
})

还有就是js可以操作整个样式表的替换(这个我以前真的没玩过)

<link href="css/skin_0.css" rel="stylesheet" type="text/css" id="cssfile" />
$(function(){
$("#cssfile").attr("href","css/skin_1.css");
})

还介绍了jQuery的一款操作cookie的小插件,可以帮忙简化cookie操作

<script src="js/jquery.cookie.js" type="text/javascript"></script>

$.cookie("MyCookieName","232",{path:'/',expires:10,domain:'myDomain.com',secure:true});//存cookie
//这里232为cookie的值,
//expires:cookie的期限,比如10就是存10天,如果不设置或者设置为null那么就当作session cookie处理,在浏览器关闭后就删除。-1就是删除cookie。
//path:'/'必须这么写,否则cookie的路径就会根据目录路径的不同自动设置,如http://www.xxx.com/user/,path会被设置为 '/user'
//domain:cookie的域名属性,默认为创建该Cookie的页面域名
//secure:如果设为true,那么此cookie的传输会要求一个安全协议,例如:HTTPS
var cookie_skin=$.cookie("MyCookieName");//取cookie
$.cookie(’MyCookieName’, null); //删除cookie,必须使用之前一样的path和domain才能正确删除cookie

【jQuery基础学习】04 jQuery中的表格操作及cookie插件的使用的更多相关文章

  1. jQuery基础学习(二)—jQuery选择器

    一.jQuery基本选择器 1.CSS选择器     在学习jQuery选择器之前,先介绍一下之前学过的CSS选择器. 选择器 语法 描述 示例   标签选择器 E {                 ...

  2. jQuery基础学习(一)—jQuery初识

    一.jQuery概述 1.jQuery的优点      jQuery是一个优秀的JavaScript库,极大地简化了遍历HTML文档.操作DOM.处理事件.执行动画和开发Ajax的操作.它有以下几点优 ...

  3. jQuery基础学习3——jQuery库冲突

    默认情况下,jQuery用$作为自身的快捷方式. jQuery库在其他库之后导入 在其他库和jQuery库都被加载完毕后,可以在任何时候调用jQuery.noConflict()函数来将变量$的控制权 ...

  4. jQuery基础学习(三)—jQuery中的DOM操作

    一.查找节点      查找属性节点: 通过jQuery的选择器来完成.      操作属性节点: 调用jQuery对象的attr()来获取它的属性值.      操作文本节点: 通过text()方法 ...

  5. jQuery基础学习4——jQuery容错性

    使用jQuery选择器不仅比使用传统的getElementById()和getElementsByTagName()函数简洁得多,而且还能避免某些错误. <script type="t ...

  6. JQuery基础学习总结

    JQuery基础学习总结 简单总结下JQuery: 一:事件 1.change事件 <!DOCTYPE html> <html lang="en"> < ...

  7. jQuery 基础学习笔记总结(一)

    Jquery 学习笔记 总结 感想: 此前在做站点时用到过jquery相关,特别是Ajax相关技术.但是并没有系统的进行学习和了解Jquery的强大的功能,趁这几天跟着资料基本的了解下Jquery的特 ...

  8. 【jQuery基础学习】00 序

    作为一个从来没有认真学过jQuery的菜来讲,我所学的都是jQuery基础. 算是让自己从0开始系统学一遍吧.学习书籍为:<锋利的jQuery>. 虽然是个序,表示一下我是个菜,但还是来几 ...

  9. 【jQuery基础学习】09 jQuery与前端(这章很水)

    这章主要是将如何将jQuery应用到网站中,或者说其实就是一些前端知识,对于我这种后端程序来说其实还是蛮有用的. 关于网站结构 文件结构 前端文件分三个文件夹放 images文件夹用来存放将要用到的图 ...

随机推荐

  1. State状态设计模式

    1.状态模式:改变对象的行为 一个用来改变类的(状态的)对象. 2:问题:当你自己实现 State 模式的时候就会碰到很多细节的问题,你必须根据自己的需要选择合适的实现方法, 比如用到的状态(Stat ...

  2. 算法 - 求两个自然数的最小公倍数(C++)

    //************************************************************************************************** ...

  3. Gamma校正与线性工作流

    1 Gamma校正是什么?8位亮度值x(0-1)经过x^0.45的一个提亮过程. 2 为什么需要Gamma校正 人的眼睛是以非线性方式感知亮度,在自然界中,人感觉到的一半亮度其实只有全部能量的0.2, ...

  4. JAVA本地远程连接linux程序监控状态

    环境:  1.本地window 2.程序部署在centos   一,启动访问权限安全守护程序 新建文件:jstatd.all.policy ,注意路径 grant codebase "$JA ...

  5. Xcode编译错误集锦

    1.在将ios项目进行Archive打包时,Xcode提示以下错误: [BEROR]CodeSign error: Certificate identity ‘iPhone Distribution: ...

  6. SAP的吐槽来源

    这几天看了 梅林传奇(英国剧) , 封面是 梅林传奇的男主 对着女主 一脸无语的玩着电脑. 原来 看梅林传奇的时候,以为自己看错了,没有理会到这部剧的真谛,是自己不懂得和发现美,为了滚娘从第二季就弃了 ...

  7. Windows Phone 支持中国移动官方支付

    今天在这里与大家分享一个好消息,Windows Phone 官方支付支持中国移动(MO Payment),在此之前无论是 Windows Phone 的用户还是开发者,都知道在Windows Phon ...

  8. android studio ndk使用openMP

    好久没碰ndk了,之前都是在eclipse下写makefile配置c++程序的,现在发现主流都是用android studio,eclipse俨然已经被遗弃了,正好最近项目需要用openMP做算法加速 ...

  9. 如何让js不产生冲突,避免全局变量的泛滥,合理运用命名空间

    为了避免变量之间的覆盖与冲突,可以生成命名空间,命名空间是一种特殊的前缀,在js中,通过{ }对象实现. 在不同的匿名函数中,根据功能声明一个不同的命名空间,每个匿名函数中GLOBAL对象的属性都不直 ...

  10. Android应用如何支持屏幕多尺寸多分辨率问题

    作为Android应用程序开发者都知道android是一个“碎片化”的世界.多种系统版本.多种尺寸.多种分辨率.多种机型,还有不同的厂商定制的不同ROM,你开发的应用会在不可预期的手机上报错.这给开发 ...