jQuery 基本用法
1)页面加载完成后开始运行do stuff when DOM is ready 中的语句!
$(document).ready(function() {
// do stuff when DOM is ready
});
实际工作的javascript的代码是这样的:
window.onload=function(){
document.getElementById("clickme").onclick=function(){
var parDom = this.parentElement;
}
2)选择器
选择一类元素
$("a")是一个jquery的选择器(selector)
$("")其中的字段就是元素的标记。比如$("div")就是<div></div>
click是函数对象的一个方法。方法为点击鼠标事件!
$(document).ready(function() {
$("a").click(function() {
alert("Hello world!");
});
});
$("div").click $("div")就是页面中所有的 div标签 这句话就是给所有的标签为div的元素 绑定了一个click事件 即当所有div 被鼠标单
击的时候 执行 alert("Hello World!");
3)选择器(selector)和事件(events)
选择DOM元素
选择一个ID为orderedlist的元素,相当于javascript中的document.getElementById("orderedlist"),jquery中只需要$("#id")其中的id为元素的ID,元素为任意元素!
addClass为把这个元素的css的class改为red
$(document).ready(function() {
$("#orderedlist").addClass("red");
});
$("#id > xx") 这种表示ID的元素下的所有元素标记为xx的元素设置CSS的Class, id为元素的id xx为元素的标记例<div><li><a>等!
$(document).ready(function() {
$("#orderedlist > li").addClass("blue");
});
4)循环each
1.这个代码只是ID为form的表单执行reset()方法。
1 $(document).ready(function() {
2 // use this to reset a single form
3 $("#reset").click(function() {
4 $("#form")[0].reset();
5 });
6 });
但是万一你有很多个表单需要执行呢?那么你可以这样写:
$(document).ready(function() {
// use this to reset several forms at once
$("#reset").click(function() {
$("form").each(function() {
this.reset();
});
});
});
2.选取 class 为 "checkbox2" 的所有选中元素,由多个<input type="checkbox" name="checkbox" value="<c:out value="${quote[0]}" />" class="checkbox2"/>组成:
var str="";
$(".checkbox2:checked").each(function(){
str+=$(this).val()+",";
});
3.选取所有radio,判断是否选中状
$(":radio").each(function () {
if ($(this).attr("checked")) {
alert("选中");
}
else {
alert("未选中");
}
})
5)属性操作attr() 方法
1.改变图像的 width 属性:
$("button").click(function(){
$("img").attr("width","180");
});
2.通过全选Checkbox,改变子Checkbox的选择:
if($("#checkbox1").attr("checked")==true){
$(".checkbox2").attr("checked",'true');//全选
}else{
$(".checkbox2").removeAttr("checked");//取消全选
}
3.设置某一元素的隐藏和可见属性:
$("#Zhongzhi").hide();
$("#Zhongzhi").show();
4.设置CheckBox的checked(选中)属性:
$(function () {
// 全选
$("#btnCheckAll").bind("click", function () {
$("[name = chkItem]:checkbox").attr("checked", true);
});
// 全不选
$("#btnCheckNone").bind("click", function () {
$("[name = chkItem]:checkbox").attr("checked", false);
});
// 反选
$("#btnCheckReverse").bind("click", function () {
$("[name = chkItem]:checkbox").each(function () {
$(this).attr("checked", !$(this).attr("checked"));
});
});
// 提交
$("#btnSubmit").bind("click", function () {
var result = new Array();
$("[name = chkItem]:checkbox").each(function () {
if ($(this).is(":checked")) {
result.push($(this).attr("value"));
}
});
alert(result.join(","));
});
});
5.在按钮提交前和提交后改变按钮的disabled(不可用)属性
$("#exportData").unbind("click");
$("#exportData").bind("click",function() {
$("#exportData").attr("disabled","disabled");
var url = "reportView.do?method=exportReportData&dataDate=<c:out value='${dataDate}'/>&reportId=<c:out value='${reportId}'/>&organId=<c:out value='${organId}'/>&levelFlag=<c:out value='${levelFlag}'/>&canEdit=<c:out value='${canEdit}'/>";
$.post(url,'',function(data){
if(data=="ok") { $("#exportData").removeAttr("disabled");
window.location.href = "reportView.do?method=downloadExcel&dataDate=<c:out value='${dataDate}'/>&reportId=<c:out value='${reportId}'/>&organId=<c:out value='${organId}'/>&levelFlag=<c:out value='${levelFlag}'/>";
}
});
});
6)取值操作val()和html()
val()常用来操作标准的表单组件对象,如button,text,hidden
html()取得第一个匹配元素的内容,简单来说就是所取得的标签所包含的所有东西。
function alldaochu(){
var str="";
$(".checkbox2:checked").each(function(){
str+=$(this).val()+",";
});
if(str==""||str==","){
alert("请选择后导出");
}else{
$("#daochuinp").val(str);
$("#daochu").submit();//表单提交
}
}
7)Ajax局部刷新
$.ajax({
type: "POST",
url: "xxxAction.do?method=xxMethod",
data: "pkid=" + pkid,
success: function(jsondata){
if(jsondata.msg=="success"){
$("#status"+pkid).val(jsondata.status);
$("#totime"+pkid).val(jsondata.sendtime);
$("#fromtime"+pkid).val(jsondata.receivetime);
$("#send"+pkid).attr("disabled","disabled");
} else if (jsondata.msg=="failed")
{
$("#status"+pkid).val(jsondata.status);
$("#totime"+pkid).val(jsondata.sendtime);
$("#send"+pkid).removeAttr("disabled");
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert(XMLHttpRequest.status);
alert(XMLHttpRequest.readyState);
alert(textStatus);
}
})
发送一个AJAX请求,其中ACTION中这样响应:
JSONObject jo = new JSONObject();
jo.put("msg", "success");
jo.put("status", "发送完成");
responseJson(response, jo);
protected void responseJson(HttpServletResponse response, JSONObject jo)
throws IOException {
response.setContentType("application/json; charset=UTF-8");
response.getWriter().print(jo.toString());
response.getWriter().flush();
response.getWriter().close();
也可以这样写:
function ajaxaccount(ratetype,deptid){
$.post("mainAction.do?method=accountlist", {
ratetype:ratetype,
deptid:deptid
}, function(data[accountlist方法返回值]) {
var accountlist=data.accountlist;
var oppaccountlist=data.oppaccountlist;
var yuee=data.yuee;
if(ratetype=='1'||ratetype=='2'){
toacccountval("account",accountlist);
toacccountval("oppaccount",oppaccountlist);
}else{
toacccountval("account2",accountlist);
toacccountval("oppaccount2",oppaccountlist);
$("#huoqiyuee2").html(yuee);
}
},'json');
}
下面这个例子是,用ajax实现,动态填充下拉列表<select></select>
function identitychange() {
var Identity = $("#Identity").val();
if (Identity != 0) {
$.post("rateListAction.do?method=getdeptlist", {
Identity : Identity
}, function(data) {
var searchlist = data.deptlist;
var stemp = "<option value='0'>全部</option>";
if (typeof (searchlist) != undefined) {
for (var i = 0; i < searchlist.length; i++) {
stemp += "<option value='"+searchlist[i].deptid+"' >"
+ searchlist[i].deptname + "</option>";
}
}
$("#dept").html(stemp);
}, 'json');
} else {
$("#dept").html("<option value='0'>全部</option>");
}
}
不过$.post方法最终实现还是$.ajax:
post: function( url, data, callback, type ) {
if ( jQuery.isFunction( data ) ) {
callback = data;
data = {};
}
return jQuery.ajax({
type: "POST",
url: url,
data: data,
success: callback,
dataType: type
});
},
jQuery 基本用法的更多相关文章
- jQuery $.each用法[转]
jQuery $.each用法 以下内容非原创,来自百度文库http://wenku.baidu.com/view/4796b6145f0e7cd18425368e.html 通过它,你可以遍历对象. ...
- jQuery 事件用法详解
jQuery 事件用法详解 目录 简介 实现原理 事件操作 绑定事件 解除事件 触发事件 事件委托 事件操作进阶 阻止默认事件 阻止事件传播 阻止事件向后执行 命名空间 自定义事件 事件队列 jque ...
- jquery cookie 用法
jquery cookie 用法 $.cookie("name","value","options") 当不设置options时,此coo ...
- [转]Jquery Ajax用法
原文地址:http://www.php100.com/html/program/jquery/2013/0905/6004.html jQuery学习之jQuery Ajax用法详解 来源: 时间 ...
- JQuery datepicker 用法
JQuery datepicker 用法 jQuery UI很强大,其中的日期选择插件Datepicker是一个配置灵活的插件,我们可以自定义其展示方式,包括日期格式.语言.限制选择日期范围.添加 ...
- jquery.cookie用法详细解析,封装的操作cookie的库有jquery.cookie.js
jquery.cookie用法详细解析 需要注意存入cookie前,对数据进行序列化, 得到后在反序列化: 熟练运用:JSON.stringify();和JSON.parse(): 通常分为如下几个步 ...
- jquery.post用法补充(type设置问题)
jquery.post用法 http://blog.csdn.net/itmyhome1990/article/details/12578275 当使用ajax获取data数据的时候,直接data.f ...
- jQuery -- 光阴似箭(一):初见 jQuery -- 基本用法,语法,选择器
jQuery -- 知识点回顾篇(一):初见jQuery -- 基本用法,语法,选择器 1. 使用方法 jQuery 库位于一个 JavaScript 文件中,其中包含了所有的 jQuery 函数. ...
- jQuery 动画用法
jQuery动画: <head> <meta charset="UTF-8"> <title>Title</title> <s ...
- jquery cookie用法
jquery cookie用法(获取cookie值,删除cookie) cookie在jquery中有指定的cookie操作类,下面我先来介绍我们在使用cookie操作类时的一些问题,然后介绍正确的使 ...
随机推荐
- Java中使用方法的注意事项
Java方法使用的注意事项 本文列举了几个小白在java中使用方法应该注意的几个地方 1. 方法应该定义在类中2.方法中不可以再嵌套方法3.方法定义的前后顺序无所谓4.想要执行方法必须要调用5.如果方 ...
- 初级软件工程师怎么走向BATJ?——献给迷茫中的测试人
软件测试,邀你同行.你好,我是爱码小哥. 又是一个深夜,打开手机备忘录,想记录一些东西,本人比较静的一个人,所以经常会去 IT行业的贴吧论坛交流一下,逛知乎,论坛,社区你就会发现大量这样的帖子,都会出 ...
- 不吹不擂,315 道 Python 面试题,欢迎挑战!
各位大佬暂时先来315道题尝尝吧,后面有时间再继续补充. 有缘人如果看到这些题,不妨留言一下答案,来证明下你到底有多水,哈哈哈哈哈刀哈哈哈哈哈哈 第一部分 Python基础篇(80题) 1.为什么学习 ...
- Linux下显示运行时链接(运行时加载)
目录 介绍 如何加载动态库 dlopen() 第一个参数: 被加载动态库的路径 第二个参数: flag表示函数符号的解析方式 dlopen 返回值 dlsym() 参数: 返回值 符号优先级 dler ...
- markdownpad2初使用
本来是想在csdn上写blog的,到那时不知道为什么,那个写blog的界面总是崩溃,写了半天的东西和公式也都没有了,很气愤,所以就准备下载一个本地的markdown编辑器,下载课两款一款是mark ...
- MacOS系统隐藏文件操作
显示或关闭隐藏文件 显示:defaults write com.apple.finder AppleShowAllFiles -bool true ; killall Finder隐藏:default ...
- IntelliJ IDEA:文件的路径本该是”\“,却变成了”¥“
修改字体导致的, 有些字体中是用¥替换掉\的,所以,修改到合适的字体就好了
- Java流程控制(Scanner)
3.1用户交互Scanner 可以通过Scanner类来获取用户的输入: 语法: Scanner s = new Scanner(System.in); 通过Scanner类的next()与nextL ...
- SSM框架整合的最新打开方式(打造最详细的SSM整合教程)
SSM整合 文章已托管到GitHub,大家可以去GitHub查看阅读,欢迎老板们前来Star!搜索关注微信公众号 [码出Offer] 领取各种学习资料! SSM 一.创建一个Maven项目 File ...
- 深入理解JVM(③)Java的锁优化
前言 从JDK5到JDK6HotSpot虚拟机开发团队花费了大量的资源实现了各种锁优化技术,如适应性自旋(Adaptive Spinning).锁消除(Lock Elimination).锁膨胀(Lo ...