一、jquery各版本变化

1.3:增加live(),为当前和将来增加的元素绑定事件

1.4:增加delegate()、undelegate(),替代live(),可以遍历绑定

1.6:2个破坏性变更:data()返回值以驼峰形式展示,用attr()和prop()区分attribute和properties状态获取,attr()取不到动态改变的值了

1.6.1:调整attr(),兼容1.6以前的做法

1.7:增加on()、off(),替代bind()、delegate()、live()、unbind()、undelegate()和die(),更好的支持ie 6/7/8的html5

2.x:不再支持ie 6/7/8,内核调整

3.x:移除load()、unload()和error()

二、表单操作

1、复选框

全选

$('[name=items]:checkbox').prop('checked', true);

全不选

$('[name=items]:checkbox').prop('checked', false);

反选

$('[name=items]:checkbox').each(function() {
this.checked = !this.checked;
});

判断某项是否选中

$('[name=items][value=233]:checkbox').prop('checked')

获取所有选中的,用逗号分隔

$('[name=items]:checkbox:checked').map(function() {return $(this).val()}).get().join(',')

设置选中

var map = '2,4';
if(map != '') {
$.each(map.split(','), function(i, v) {
$('[name=items][value=' + v + ']:checkbox').prop('checked', true);
});
}

状态改变事件

$('[name=items]:checkbox').on('change', function() {
$('[name=items]:checkbox:checked').map(function() {return $(this).val()}).get().join(',');
});

2、单选框

全不选

$('[name=items]:radio').prop('checked', false);

判断某项是否选中

$('[name=items][value=233]:radio').prop('checked')

获取选中的

$('[name=items]:radio:checked').val()

设置选中

$('[name=items][value=' + 233 + ']:radio').prop('checked', true);

状态改变事件

$('[name=items]:radio').on('change', function() {
$(this).val();
});

3、下拉框

获取选中

$('select').val()

获取选中text

$('select').find('option:selected').text();

设置选中

$('select').val(233);

设置text选中

$('select').find('option[text=xxx]').prop('selected', true);

选中第一个

$('select').prop('selectedIndex', 0);

状态改变事件

$('select').on('change', function() {
$(this).find(':selected').val();
});

三、ajax操作

1、$.load()

$('#abc').load(url, [data], [callback]); //无论成功失败都会执行回调函数
$('#abc').load('def.html', {aaa: $('#aaa').val(), bbb: 'bbb'}, function(responseText, textStatus, XMLHttpRequest) {
//responseText: 请求返回的内容
//textStatus: 请求状态,success、error、notmodified、timeout
//XMLHttpRequest: XMLHttpRequest对象
});
无参数是get方式,有参数是post方式

2、$.get()

$('#abc').get(url, [data], [callback], [type]); //当Response的返回状态是success才执行回调函数
$('#abc').get('def.do', {aaa: $('#aaa').val(), bbb: 'bbb'}, function(data, textStatus) {
//data: 返回的内容,xml、json、html
//textStatus: 请求状态,success、error、notmodified、timeout
}, 'json');
url长度不要大于2kb
get的数据更容易被用户查看到

3、$.post()

$('#abc').post(url, [data], [callback], [type]); //当Response的返回状态是success才执行回调函数
$('#abc').post('def.do', {aaa: $('#aaa').val(), bbb: 'bbb'}, function(data, textStatus) {
//data: 返回的内容,xml、json、html
//textStatus: 请求状态,success、error、notmodified、timeout
}, 'json');

4、$.getJSON()

$('#abc').getJSON(url, [data], [callback]); //当Response的返回状态是success才执行回调函数
$('#abc').getJSON('def.do', {aaa: $('#aaa').val(), bbb: 'bbb'}, function(data, textStatus) {
//data: 返回的内容,xml、json、html
//textStatus: 请求状态,success、error、notmodified、timeout
});
getJSON还支持JSONP形式的调用

5、$.ajax()

$.ajax({
url: 'def.do',
type: 'POST',
async: true,
data: {
aaa: 'aaa', bbb: 233
},
timeout: 5000,
dataType: 'json',
beforeSend: function(XMLHttpRequest){
//XMLHttpRequest: XMLHttpRequest对象
},
success:function(data, textStatus){
//data: 返回的内容,xml、json、html
//textStatus: 请求状态,success、error、notmodified、timeout
},
error:function(XMLHttpRequest, textStatus, errorThrown){
//XMLHttpRequest: XMLHttpRequest对象
//textStatus: 错误信息
//errorThrown: 捕获的错误对象(可选)
},
complete:function(XMLHttpRequest, textStatus){
//XMLHttpRequest: XMLHttpRequest对象
//textStatus: 请求状态,success、error、notmodified、timeout
}
})

6、序列化元素

var data = $('#form').serialize(); //将表单元素序列化为字符串
var fields = $('#form').serializeArray(); //将表单元素序列化为JSON数据

四、常用例子

1、状态改变

text输入监听

$('input[type=text]').on('input propertychange', function() {
$(this).val();
});

获得焦点

$('input[type=text]').on('focus', function() {
$(this).val();
});

失去焦点

$('input[type=text]').on('blur', function() {
$(this).val();
});

禁用控件

$('input[type=text]').prop('disabled', true);

2、窗口、框架赋值

子窗口调用父窗口函数、对象

window.opener.fun();
window.opener.value;
window.opener.$("#abc").html();
$("#abc", window.opener.document).html()

子框架调用父框架函数、对象

window.parent.fun();
window.parent.value;
window.parent.$("#abc").html();
$('#abc', window.parent.document).html();

父框架调用子框架函数、对象

$("#iframe")[0].contentWindow().fun()
$("#iframe").contents().find("#abc").html();

3、jquery、js对象互相转换

var $abc = $('#abc');
var abc = $abc[0];
var $abc = $(abc);

4、响应js的超链接

<a href="javascript:void(0);">666</a>

5、js批量替换

abc.replace(/\233/g, "666");

6、js大小写

$('#abc').val().toUpperCase();
$('#abc').val().toLowerCase();

7、js引入

<script type="text/javascript" src="url"></script>
<script type="text/javascript"></script>

8、json转换

var obj = JSON.parse(str);
var str = JSON.stringify(obj);

9、延迟加载

setTimeout(function (){
test();
}, 2000);

setTimeout('test()',2000);
function test() {
alert("233");
}

10、动态调用函数

if(typeof test === 'function'){
eval('test()');
}

11、是否显示

$("#div").is(":hidden");
$("#div").is(":visible");

jQuery—常用操作的更多相关文章

  1. JQuery常用操作实现方式

    http://www.cnblogs.com/guomingfeng/articles/2038707.html 一个优秀的 JavaScript 框架,一篇 jQuery 常用方法及函数的文章留存备 ...

  2. Jquery常用操作:checkbox、select取值,radio、checkbox、select选中及其相关

    常用Jquery操作:checkbox取值.select取值.radio选中.checkbox选中.select选中及其相关: 1.影藏页面元素 使用jquery真的很方便,比如要控制div的显示与隐 ...

  3. jQuery 常用操作(转)

    一.书写规则 支持链式操作: 在变量前加"$"符号(var $variable = jQuery 对象): 注:此规定并不是强制要求. 二.寻找元素 选择器 基本选择器 层级选择器 ...

  4. jQuery 常用操作

    jQuery操作: 不像dom是通过等号赋值,它是传递参数 $('#tb:checkbox').prop('checked'); 获取值 $('#tb:checkbox').prop('checked ...

  5. jQuery常用操作

    jQuery jQuery是一个轻量级的JS库,是一个被封装好的JS文件,提供了更为简便的元素操作方式,jQuery封装了DOM. 使用jQuery 引入jQuery文件 <scrtipt sr ...

  6. 160726、jQuery常用操作

    一.简介   定义  jQuery创始人是美国John Resig,是优秀的Javascript框架: jQuery是一个轻量级.快速简洁的javaScript库. jQuery对象  jQuery产 ...

  7. jQuery常用操作(待续)

    1. input清空内容 <1> $("#选择器id").val(""); <2> $("input[name='input框 ...

  8. jQuery常用操作部分总结

    注意:$(“.xxx”)   类,一定要在前面加上点callback为完成后执行的函数名称隐藏显示:hide()   show()淡入淡出:fadeIn()  fadeOut()  fadetoggl ...

  9. jquery常用操作整理

    1.数据中添加或者删除指定元素 var  arr=['red','yello','blue']; arr.push('green');  //添加元素 arr = $.grep(arr,functio ...

随机推荐

  1. 在xampp中配置dvwa

    DVWA主要是用于学习Web的常见攻击,比如SQL注入.XSS等的一个渗透测试系统,下面我将结合XAMPP来说明它的安装过程. 一.环境 OS:Windows 10 XAMPP:5.6.24 DVWA ...

  2. GreenDao2.2升级GreenDao3.0的适配之路

    前言.为什么要升级到Greendao3.0? 1. 多人开发 以往的数据库建表建Dao等操作要新开一个module,在统一的地方管理数据库建表,现在可以直接写Entity.多人开发时自己管自己的Ent ...

  3. iOS - GitHub干货分享(APP引导页的高度集成 - DHGuidePageHUD - ②)

    距上一篇博客"APP引导页的高度集成 - DHGuidePageHUD - ①"的发布有一段时间了, 后来又在SDK中补充了一些新的内容进去但是一直没来得及跟大家分享, 今天来跟大 ...

  4. Android 网络框架之Retrofit2使用详解及从源码中解析原理

    就目前来说Retrofit2使用的已相当的广泛,那么我们先来了解下两个问题: 1 . 什么是Retrofit? Retrofit是针对于Android/Java的.基于okHttp的.一种轻量级且安全 ...

  5. Xcode8+和iOS10+使用Masonry自动计算行高

    说起tableView的自动计算行高,真的是不想再提了,写了不知道几百遍了.可就是这麽一个小玩意儿,把我给难的不行不行的,眼看都要没头发了. 1.设置tableView的预估行高和行高为自动计算 // ...

  6. Android中通信协议

    一.TCP/IP协议(传输层协议) 1.Socket与ServerSocket Socket是应用层与TCP/IP协议簇通讯的中间抽象层,Socket是一组接口,在设计模式中,Socket的设计就是门 ...

  7. 记录一次Quartz2D学习(三)

    在(二)内,讲到了几何图形的绘制,这次就讲文本与图片的绘制 3 图片与文本 3.1 文本绘制 - (void)drawRect:(CGRect)rect { NSString * str = @&qu ...

  8. 织梦dedecms漏洞修复大全(5.7起)

    很多人说dedecms不好,因为用的人多了,找漏洞的人也多了,那么如果我们能修复的话,这些都不是问题. 好,我们来一个一个修复.修复方法都是下载目录下该文件,然后替换或添加部分代码,保存后上传覆盖(记 ...

  9. python中的迭代器

    1.可以直接作用于for循环的数据类型 第一类:集合数据类型,如list.tuple.dict.set.str等: 第二类:generator,包括集合定义generator和带yield的gener ...

  10. POJ 2125 Destroying the Graph 二分图最小点权覆盖

    Destroying The Graph Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 8198   Accepted: 2 ...