快速导航

一.传统方式生成Table

二.使用jquery.tmpl插件快速生成Table

三.Jquery中的操作class的几个方法

四:jq里面的克隆

五:属性过滤器

六:表单元素过滤器

一.传统方式生成Table

        var peopleArr = [
{ "name": "刘欢", "age": , "skill": "从头再来" },
{ "name": "杨坤", "age": , "skill": "32唱演唱会" },
{ "name": "那英", "age": , "skill": "白天不懂夜的黑" },
{ "name": "王菲", "age": , "skill": "复合" }
]
$(function () {
var $tbCreate = $("<table></table>")//生成table
var $trTitle = $("<tr></tr>").append("<td>序号</td>").append("<td>姓名</td>").append("<td>年龄</td>").append("<td>技能</td>");
$tbCreate.append($trTitle);//将标题加到tb中
//循环数组,生成tr
for (var i = ; i < peopleArr.length; i++) {
//每循环一次生成一个tr
var $trCreate = $("<tr><td><input type='checkbox' class='chkOne'/>" + (i + ) + "</td></tr>");
//循环对象数组,生成其他td
for (var item in peopleArr[i]) {
var $tdCreate = $("<td>" + peopleArr[i][item] + "</td>");
//加到tr里面
$trCreate.append($tdCreate);
}
//将tr加到table里面
$tbCreate.append($trCreate);
}
//将table加到body里面
$(document.body).append($tbCreate);

二.使用jquery.tmpl插件快速生成Table

    <script src="jquery/jquery-1.9.1.js"></script>
<script src="jquery/jquery.tmpl.min.js"></script>首先要引入这个js 需要显示的字段在这里先占位
<script type="text/x-jquery-tmpl" id="tmpl01">
<!--//准备模板,使用占位符,属性名-->
<tr>
<td><input type="checkbox" class="chkOne" /></td>
<td>${name}</td>
<td>${age}</td>
<td>${skill}</td>
<td><a href="#">删除</a> <a href="#">编辑</a></td>
</tr>
</script>
<script type="text/javascript">
var peopleArr = [
{ "name": "刘欢", "age": , "skill": "从头再来" },
{ "name": "杨坤", "age": , "skill": "32唱演唱会" },
{ "name": "那英", "age": , "skill": "白天不懂夜的黑" },
{ "name": "王菲", "age": , "skill": "复合" }
]
//.tmpl方法,只有导入插件才有
//循环对象数组,数组里面的每一个对象,都会生成一个模板dom元素
var $tmplTr = $("#tmpl01").tmpl(peopleArr);//返回的是jq对象.这里是老师故意分开写 ohyeah $(function () {
$tbCreate = $("<table></table>").append($tmplTr);
//将table加到body里面去
$(document.body).append($tbCreate);
})
</script>

三.Jquery中的操作class的几个方法

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<script src="jquery/jquery-1.9.1.js"></script>
<style type="text/css">
div {
border: 1px solid #0094ff;
height: 100px;
width: 100px;
}
.red {
background-color: red;
}
.black {
background-color: black;
}
</style>
<script type="text/javascript">
$(function () {
$("#btnChange").click(function () {
//切换class//toggleClass 会判断 是否有这个class 如果有 删除,如果没有,就添加
API中的说明:如果存在(不存在)就删除(添加)一个类
$("div").toggleClass("black");
})
$("#btnRedAdd").click(function () {
//增加class
$("div").addClass("red"); })
$("#btnRedRemove").click(function () {
//删除class
$("div").removeClass("red"); })
}) </script>
</head>
<body>
<input type="button" value="黑白切换" id="btnChange" />
<input type="button" value="增加redclass" id="btnRedAdd" />
<input type="button" value="移除redclass" id="btnRedRemove" />
<div></div>
<div></div>
<div></div>
</body>
</html>

四:jq里面的克隆

jq里面的克隆,不管深浅,都会克隆子节点,jq里面的浅克隆,只是克隆元素,事件不克隆,jq里面的深克隆,事件一并克隆了

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<script src="jquery/jquery-1.9.1.js"></script>
<script type="text/javascript">
var $button = $("<input type='button' value='点击删除自己' onclick='$(this).remove();'/>");
//为button设置点击事件
//使用jq的方法为dom元素增加事件,当这个dom元素从dom树里面移除,事件也没有了
//如果要实现,将dom元素从dom树里面移除,事件还在,可以将事件写道dom元素的 事件属性里面
$(function () {
$("#btnAdd").click(function () {
//将 按钮 追加到body里面去
$(document.body).append($button); });
}) </script>
</head>
<body>
<input type="button" id="btnAdd" value="增加按钮" />
</body>
</html>

五:属性过滤器

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<script src="jquery/jquery-1.9.1.js"></script>
<script type="text/javascript">
alert("稍等一会");
$(function () {
//表示拥有某种属性的元素
$("li[skill]").css("backgroundColor", "orange");
//表示属性等于某个值
$("li[skill=noNice]").css("fontSize", "50px");
//表示属性不等于某个值
$("li[skill!=noNice]").css("color", "#0094ff");
//属性过滤器,可以判断任意属性-包括id,class等
//适用范围,就是对于元素的一个过滤
$("li[class]").css("border", "5px solid #0094ff");
$("li[class=vegetable][prize=10]").css("backgroundColor", "green");
})
</script>
</head>
<body>
<ol>
<li skill="noSwim">恶魔果实</li>
<li class="noGoodLook">百香果</li>
<li skill="noNice">榴莲</li>
<li class="vegetable" prize="">西兰花</li>
<li class="vegetable" prize="">秋葵</li>
<li id="smile">开心果</li>
<li class="noDelicious">韭菜月饼</li>
</ol>
</body>
</html>

六:表单元素过滤器

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<script src="jquery/jquery-1.9.1.js"></script>
<script type="text/javascript">
$(function () {
$("#btnShowNum").click(function () {
//使用表单元素过滤器 获取选中的checkbox
alert($("input[type=checkbox]:checked").length);
})
})
</script>
</head>
<body>
<input type="checkbox" /><label>篮球</label>
<input type="checkbox" /><label>足球</label>
<input type="checkbox" /><label>排球</label>
<input type="checkbox" /><label>曲棍球</label>
<br />
<input type="radio" name="male" /><label>男</label>
<input type="radio" name="male" /><label>女</label>
<input type="button" value="显示选中个数" id="btnShowNum" />
</body>
</html>

【原创】Jquery初体验二的更多相关文章

  1. jquery.fn.extend与jquery.extend--(初体验二)

    1.jquery.extend(object); 为扩展jQuery类本身.为类添加新的方法. jquery.fn.extend(object);给jQuery对象添加方法. $.extend({ a ...

  2. [原创]vscode初体验

    这段时间,在网上看见很多从.net转java的,为什么会造成这样的情况,我感觉有几点 1.  微软在中国的生态不好,死要钱,很多公司都不想花这部分钱 2.  做.net开发人,工资普遍较低 前言 闲聊 ...

  3. JQuery初体验

    虽然做b/s也有一年半了,但是还没怎么认真的去看JQuery,趁自己生病的这几天,恶补一下JQuery方面的知识,保持学习的态度,内容很简单,聊以自慰一下>_<.废话不多说,直接上代码了. ...

  4. Jquery初体验一

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  5. Ruby on rails初体验(二)

    体验一中添加了一个最基本的支架和一个简单的数据迁移,实现了一个基本的增删改查的功能列表.体验二中要在次功能上继续丰满一下功能.实现如下效果: 在每个公司中都包含有不同的部门,按照体验一中的方法,添加一 ...

  6. Spring Cloud Alibaba 初体验(二) Nacos 服务注册与发现 + 集成 Spring Cloud Gateway

    一.服务注册 添加依赖: <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>s ...

  7. JSON初体验(二):Gson解析

    今天,我们来介绍一下Gson的jar包的用法. JSON解析之Gson 特点:编码简介,谷歌官方推荐 数据之间的转换: 1.将json格式的字符串{}转换成为java对象 API: <T> ...

  8. node初体验(二)

    1.静态资源访问,需要设置路由和响应标头 2.url模块.path模块.querystring模块 Url { protocol: null, slashes: null, auth: null, h ...

  9. jQuery---jQuery初体验

    jQuery初体验 1. 引入jquery文件 2. 入口函数标准 jQuery优点总结 (对应的就是js的缺点): 查找元素的方法多种多样,非常灵活 拥有隐式迭代特性,因此不需要手写for循环 完全 ...

随机推荐

  1. 【慕课网实战】Spark Streaming实时流处理项目实战笔记十二之铭文升级版

    铭文一级: ======Pull方式整合 Flume Agent的编写: flume_pull_streaming.conf simple-agent.sources = netcat-sources ...

  2. iptables简单应用

    可以修改/etc/rc.d/boot.local让规则重启后也能生效,如: /sbin/iptables -F /sbin/iptables -A INPUT -i eth0 -p tcp --spo ...

  3. Docker网络简介

    Docker允许通过外部访问容器或则容器互联的方式来提供网络服务. 外部访问容器 容器中可以运行一些网络应用,要让外部也可以访问这些应用,可以通过-P或则-P参数来指定断开映射.当使用 -P 标记时, ...

  4. (转)什么是.NET?什么是CLI?什么是CLR?IL是什么?JIT是什么,它是如何工作的?GC是什么,简述一下GC的工作方式?

    转自:http://www.cnblogs.com/haofaner/articles/2288968.html 1:什么是.NET? NET 是 Microsoft 的用以创建 XML Web 服务 ...

  5. 2018/6/29 关于hashmap的总结

    hashMap和ConcurrentHashMap的区别 hashMap内部具体如何实现的 如果hashMap的key是一个自定义的类,怎么办 为什么重写equals还要重写hashcode 一.什么 ...

  6. 异步多线程 Thread ThreadPool Task

    一.线程 Thread ThreadPool 线程是Windows任务调度的最小单位,线程是程序中的一个执行流,每个线程都有自己的专有寄存器(栈指针.程序计数器等),但代码区是共享的,即不同的线程可以 ...

  7. 编写高质量iOS与OS X代码的52个有效方法

    第一章重点: 第一条:OC的起源 OC由smalltalk语言演化而来的语言为消息结构(messaging structure)语言,其运行时所因执行的的代码由运行环境来决定:函数调用(functio ...

  8. cxgrid过滤使用心得

    uses cxFilter; cxgrid过滤条件清除:cxgrdbtblvwGrid1DBTableView2.DataController.Filter.AutoDataSetFilter:=Tr ...

  9. 分形之花篮(Flower Basket)

    这一篇展示的图形与上一篇文章分形之皇冠(Crown)很相似. 核心代码: static void FractalFlowerBasket(const Vector3& vStart, cons ...

  10. IIS日志存入数据库之二:ETW

    在上一篇文章<IIS日志存入数据库之一:ODBC>中,我提到了ODBC方式保存的缺点,即:无法保存响应时间以及接收和响应的字节数. 如果一定要获取响应时间以及接收和响应的字节数的话,就要另 ...