jQuery 内容和属性

 
这节课,我们学习使用jQuery来控制元素的内容、值和属性。
 
html() 控制所选元素的内容(包括HTML标记);
text() 控制所选元素的内容;
val() 控制表单里value的值;
attr() 控制属性,比如a标签里的href  。
 
这几个方法特别的简单好用,那么怎么用呢?它的格式写法,我们来瞧瞧源代码:
 
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>jQuery 学习4</title>
<!--使用jQuery一定不要忘记引用jQuery文件-->
<script src="../js/jquery-1.12.2.min.js"></script>
</head>
<body>
<div id="div1">用html()方法来控制我,<span>你会看到div里包含的内容和标签</span></div>
<p id="p1">用text()方法来控制我,<span>你只能看到文本内容</span></p>
<input id="in" type="text" value="龙枫"/>
<a id="a" href="http://www.tudou.com">百度</a>
<br/><br/>
<!--我们采用js的点击事件来测试jQuery-->
<button onclick="div1()">点击我获取div的html内容</button>
<button onclick="p1()">点击我获取p的text文本内容</button>
<button onclick="input1()">点击我获取input的val值</button>
<button onclick="a1()">点击我获取a的href属性的值</button>
<script>
//function声明一个函数
function div1(){
//运行此函数,我们就玩jQuery的代码
alert($("#div1").html());
//这里我们还是用alert方法来弹出提示,看效果
//大家可以看到,js和jQuery是可以一起的,相互摩擦,而并非使用jQuery就无法使用js
}
function p1(){
alert($("#p1").text());
}
function input1(){
alert($("#in").val());
}
function a1(){
alert($("#a").attr("href"));
}
//以上代码,就会弹出指定的内容。
//同学们注意,val()方法,是弹出的值,"值",不是文本内容
//attr()方法,设置和改变属性值的
</script>
<br/><br/> <button onclick="div2()">点击我修改div的内容(包括标签)</button>
<button onclick="p2()">点击我修改p的text文本内容</button>
<button onclick="input2()">点击我修改input的val值</button>
<button onclick="a2()">点击我修改a的href属性的值</button>
<!--下面我们再写一个script,页面上是可以写多个script
老师这里分开写,同学们好区分-->
<script>
function div2(){
//同学们注意,用jQuery的html()方法修改内容,是很简单的,看格式
$("#div1").html("我是div,<b>我被改变了,并且标签也被改变成b标签了</b>");
//同学们刷新页面,触发此事件之后,会发现,后面的内容被加粗了,是因为b标签是加粗效果
//我们打开F12查看源码,会发现,span元素被删除了,然后加上了b标签,
//意思是#div1元素的内容,包括标签全部都变成了上面html()括号里的内容
}
function p2(){
$("#p1").text("我是p,<b>我被改变了文本内容</b>");
//用text()方法写成和html()方法一样的内容,在页面上触发事件
//同学们会看到span元素也被删除了,但是并没有出现b元素,在这里,b元素也被当成了字符串内容
//所以text只能控制文本内容,无法设置HTML标签的
}
function input2(){
$("#in").val("你帅吗?");
//按下F12查看源码,会发现,input元素里的value也不会发生改变
//是因为,页面加载完成之后,你即使修改input,源码里的value也不会变动
//同学们不用担心提交数据到后台,只要页面上的input变成了“你帅吗”,那么提交给后台的也会是这个值
}
function a2(){
//我们先修改a标签的文本内容,再修改它href属性的值
$("a").text("土豆").attr("href","http://www.tudou.com");
//这里可以看到,这些方法是可以一起使用来控制一个元素的,只需要在后面加一个"."一个点就OK了
//attr()方法的使用,两个参数,第一个是属性,第二个则是值。
}
</script>
<p>以上效果,同学们可以先测试第一行,弹出提示,再测试第二行按钮,修改内容、属性值之后,再来测试第一行的按钮,试试效果</p>
</body>
</html>
 
老师这里额外说一下,以后这些东西会用到神马地方,attr()方法,可以修改图片的路径,很多时候我们玩复选框,但是复选框没法修改css样式,所以我们就可以用图片来代替,第一张图片是未选中,当我点击,就修改它的属性src,值就改成第二张图片已选中的,这样就可以轮流切换;还有一种,是登录的时候,用户密码一般都是 <input type="password" /> 不可见的对吧,输入就是一堆星号,我们就可以放一个按钮在旁边,比如一张图(眼睛的图片),当我点击这张图,切换input的password变成text 一下就是可见的了。
val()也很重要,我们登录的时候,如果前台判断,它输入的格式、长度等,那么我们就要用到val()方法来获取它的值,才能判断,否则获取不了,就无法正常判断了。
text()和html()都是控制内容的,但html()可控制HTML标签,而text()则只能单纯的控制文本内容,所以同学使用的时候要区分开。
 
上面代码同学们可以多测试一下,还是很简单的,就是注意写法格式
 

第二十二篇 jQuery 学习4 内容和属性的更多相关文章

  1. 第二十六篇 jQuery 学习8 遍历-父亲兄弟子孙元素

    jQuery 学习8 遍历-父亲兄弟子孙元素   jQuery遍历,可以理解为“移动”,使用“移动”还获取其他的元素.   什么意思呢?老师举一个例子: 班上30位同学,我是新来负责教这个班学生的老师 ...

  2. 第二十四篇 jQuery 学习6 删除元素

    jQuery 学习6 删除元素   上节课我们做了添加元素,模拟的是楼主发的文章,路人评论,那么同学们这节课学了删除之后,去之前的代码上添加一个删除,模拟一个楼主删除路人的评论. jQuery的删除方 ...

  3. 第二十五篇 jQuery 学习7 获取并设置 CSS 类

    jQuery 学习7 获取并设置 CSS 类   jQuery动态控制页面,那么什么是动态呢?我们就说一下静态,静态几乎又纯html+css完成,就是刷新页面之后,不会再出现什么变动,一个实打实的静态 ...

  4. Python开发【第二十二篇】:Web框架之Django【进阶】

    Python开发[第二十二篇]:Web框架之Django[进阶]   猛击这里:http://www.cnblogs.com/wupeiqi/articles/5246483.html 博客园 首页 ...

  5. 【Python之路】第二十二篇--Django【基础篇】

    1 Django流程介绍 MTV模式       著名的MVC模式:所谓MVC就是把web应用分为模型(M),控制器(C),视图(V)三层:他们之间以一种插件似的,松耦合的方式连接在一起. 模型负责业 ...

  6. 第二十二篇 -- 事件与信号(自定义label信号的双击功能)

    在第六篇中已经学习过了自定义信号的相关内容了,那一篇中讲的是自定义类中的自定义信号,类和信号都是自己定义的.那么今天想要学习的是事件处理和信号的关系.如同Label标签,它本身有很多的信号,但是它没有 ...

  7. Python之路【第二十二篇】CMDB项目

    浅谈ITIL TIL即IT基础架构库(Information Technology Infrastructure Library, ITIL,信息技术基础架构库)由英国政府部门CCTA(Central ...

  8. Python之路【第二十二篇】:Django之Model操作

    Django之Model操作   一.字段 AutoField(Field) - int自增列,必须填入参数 primary_key=True BigAutoField(AutoField) - bi ...

  9. flask第二十二篇——模板【4】过滤器

    请关注微信公众号:自动化测试实战 先来教大家一个pycharm设置默认模板的方法.我们每次新建模板或者平时写代码打开以后可能都要重复写# coding: utf-8这些代码,其实我们可以设置好模板,让 ...

随机推荐

  1. Android应用开发编译框架流程与IDE及Gradle概要

    1 背景 建议阅读本文之前先阅读<Android Studio入门到精通>和<Groovy脚本基础全攻略>及<Gradle脚本基础全攻略>三篇博客作为背景知识,这样 ...

  2. 利用ExpandableListView实现常用号码查询功能的实现

    package com.loaderman.expandablelistviewdemo; import android.content.Context; import android.databas ...

  3. linuxs上mono

    当前,在Linux系统上架设ASP.NET网站.建设WEB应用工程项目已经在国内流行起来,而“Mono+Jexus”架构模式是Linux承载ASP.NET企业级应用的极为重要的架构方式,这种架构中,J ...

  4. Windows下Java JDK环境变量的配置

    注意:前提是你已经在电脑上安装了JDK 1.打开控制面板—系统和安全—系统,选择高级系统设置 2.选择环境变量 3. 然后看看用户变量中有没有JAVA_HOME和CLASSPATH变量 4.新建JAV ...

  5. IntelliJ IDEA 2019 注册码 (激活码) 有效期至2100年

    IntelliJ IDEA 2019 注册码 (激活码) 有效期至2100年 本人使用的IDEA是最新版:IntelliJ IDEA 2018.3.3 x64 (IntelliJ IDEA官网下载地址 ...

  6. java解析和组装json以及一些方法的理解

    这是一个json格式的字符串 第一种情况(简单格式) String result = "{\"name\":\"小明\",\"age\&qu ...

  7. 修改deploy location

    在MyEclipse,如果某Web Project重命名后,项目名称有可能仍然是之前的名称. 修改路径: 第一, 路径:右击某Web Project,Properties->MyEclipse- ...

  8. HTTP及WEB框架简述

    HTTP介绍 Hyper Text Transfer Protocol,超文本传输书协议,是万维网数据通信的基础,规定了请求和响应标准. HTTP工作原理 HTTP 请求以及响应的步骤 客户端连接到W ...

  9. LeetCode.1071-字符串最大公约数(Greatest Common Divisor of Strings)

    这是小川的第391次更新,第421篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第253题(顺位题号是1071).对于字符串S和T,当且仅当S = T + ... + T ...

  10. Spring体系

    1.Spring简介 Spring是一个轻量级Java开发框架,最早有Rod Johnson创建,目的是为了解决企业级应用开发的业务逻辑层和其他各层的耦合问题.它是一个分层的JavaSE/JavaEE ...