快速导航

一.传统方式生成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. Ng第十二课:支持向量机(Support Vector Machines)(三)

    11 SMO优化算法(Sequential minimal optimization) SMO算法由Microsoft Research的John C. Platt在1998年提出,并成为最快的二次规 ...

  2. How to fix "http error 403.14 - forbidden" in IIS7

    If you encounter the following error: "http error 403.14 - forbidden. The Web server is configu ...

  3. forward请求转发,param参数传递以及request.getParameter图文讲解

    <%@ page language="java" contentType="text/html;charset=utf-8" pageEncoding=& ...

  4. WINDOWS CLUSTER -- 时间不同步导致的群集问题

    故障描述,重启服务器后,发现该重启节点未成功加入到Windows群集中,导致该节点上的Alwayson服务也受影响处于“正在解析”状态,尝试重启cluster服务,发现无效,查看windows日志,发 ...

  5. Docker Register部署与基本认证

    准备 基本事项 Docker环境 登录授权方式 镜像存放地址 HTTPS外网访问 启动Docker Registry 1. 基本事项 本篇涉及到的数据文件都放在/data目录下, 其中会有三个子目录 ...

  6. DevExpress中获取GridControl排序之后的List

    public System.Collections.IList GetGridViewFilteredAndSortedData(DevExpress.XtraGrid.Views.Grid.Grid ...

  7. 背水一战 Windows 10 (43) - C# 7.0 新特性

    [源码下载] 背水一战 Windows 10 (43) - C# 7.0 新特性 作者:webabcd 介绍背水一战 Windows 10 之 C# 7.0 新特性 介绍 C# 7.0 的新特性 示例 ...

  8. DS-博客作业03--栈和队列

    1.本周学习总结 第三章主要介绍栈和队列的基本概念,存储结构,基本运算算法设计和应用实例.从组成元素的逻辑关系来看,栈和队列都属于线性结构.栈和队列与线性表的不同之处就在于他们的相关运算具有一些特殊性 ...

  9. Linux下查看文档指令

    1,cat直接查看 cat /etc/profile 2,more,less分页查看 less  /etc/profile more /etc/profile less -N /etc/profile ...

  10. 使用 kafkat 在线扩缩容 kafka replicas

    本文档应用环境为 kafka-0.8.2.0, 其余版本请先行测试 场景 线上很多 kafka 的 topic 的副本数为1,这样的设置丧失了 kafka 高可用的特性,所以我们需要把 topic 的 ...