这章本来准备写成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. 【Spark】jupyter notebook

    iPython 和 Jupter Notebook 都支持spark ,调用方式如下: PYSPARK_DRIVER_PYTHON=ipython ./bin/pysparkPYSPARK_DRIVE ...

  2. Spring3 MVC请求参数获取的几种方法

    Spring3 MVC请求参数获取的几种方法 一.      通过@PathVariabl获取路径中的参数 @RequestMapping(value="user/{id}/{name}&q ...

  3. sql优化之(DMV)

    原文地址:http://technet.microsoft.com/zh-cn/library/bb838723.aspx Microsoft SQL Server 2005 提供了一些工具来监控数据 ...

  4. Cocos2dx 把 glview 渲染到 Qt 控件上(Mac 环境)

    本文原链接:http://www.cnblogs.com/zouzf/p/4423256.html 环境:Mac 10.9.2   Xcode5.1.1  Qt5.3  cocos2dx-2.2.4 ...

  5. netbeans项目中排除node_modules文件夹

    由于项目中的javascript使用了gulp编译技术,所以在web目录下有js的源码目录,其中又有gulp所使用的nodeJS模块,node_modules下面小文件很多,所以造成netbeans扫 ...

  6. Android JNI框架图

  7. 彻底解决Google浏览器CSS居中问题

    div做的界面时,又出现CSS hack(CSS兼容浏览器问题)在IE内核浏览器或者firefox浏览器中都能居中,没有居中的可以用其特殊标签来设定居中,如下划线 _ IE6优先识别,!importa ...

  8. [转]C# dataGridview 报“索引-1没有值”的解决办法

    很多WINFORM的开发人员在DataGridView的开发当中,都会出现“索引-1没有值”这个烦人的问题,其实较早之前,我已经大概知道问题的所在,也找到了解决方法,不过一直没有时间去深入研究一下,今 ...

  9. symfony安装使用

    symfony是一个强大的具有DI特性的框架,目前比较流行的php开发框架Drupal,Laravel底层都是使用了symfony. 想了解symfony更多内容,传送门 安装symfony很简单,一 ...

  10. MyBatis知多少(8)关系型数据库

    MyBatis的存在就是为了简化对关系数据库的访问.数据库的确非常复杂,要正确地使用它们需要做很多的工作.数据库负责管理数据和修改数据.我们使用数据库而不简简单单地使用一个 平板文件的原因就在于数据库 ...