jQuery对象与Dom对象及jQuery中的选择器

jQuery
jQuery对象和DOM(document)对象
用#id取得的jQuery对象与document.getElementByid所得的Dom对象区别

普通的dom对象一般可以通过$()转换成jquery对象
如:$(document.getElementById("msg"));

由于jquery对象本身是一个集合。所以如果jquery对象要转换为dom对象则必须取出其中的某一项,一般可通过索引取出。
如:
  $("#msg")[0],$("div").eq(1)[0],$("div").get()[1],$("td")[5]
  这些都是dom对象,可以使用dom中的方法,但不能再使用Jquery的方法。



[重点]CSS选择器
1. 标签名选择器div{color:red;}/即页面中的各个标签名的CSS样式
2. 类选择器.divClass{color:red;}/即定义的每个标签的class中的CSS样式
3. Id选择器#myDiv{color:red;}/即页面中的标签的id
4. 后代选择器(类选择器的后代选择器).divClass span{color:red;}/即多个选择器以逗号的格式分隔
5. 群组选择器div,span,img{color:red;}/即具有相同样式的标签分组显示


[重点]jQuery中的选择器

1. 基本选择器
a. $(“*”) 选取页面所有元素。
b. $(“p,div”)选取p、div标签元素
c. $(“.con”)选取class=”con”元素
d. $(“#one”)选取id=”one”元素

2. 层次选择器
a. Parent>child 选取直系子元素
b. Prev+next 选取下一个兄弟元素,相当于next();
c. Perv~siblings 选取prev的所有兄弟元素,等同于nextAll();

3. 过滤选择器
基本过滤选择器
a. $(p:first) 选取匹配的第一个元素
b. $(p:last) 选取匹配的最后一个元素
c. $(p:not(“div”)) 去除与给定选择器匹配的元素
d. $(“tr:even”) 匹配索引值为偶数的元素,从0开始计数
e. $(“tr:odd”) 匹配索引值为奇数的元素,从0开始计数
f. $(“tr:eq()”) 匹配一个给定索引值的元素,从0开始计数
g. $(“tr:gt(0)”) 匹配所有大于给定索引值的元素,从0开始计数
h. $(“tr:lt(0)”) 匹配所有小于给定索引值的元素,从0开始计数
i. $(“:header”) 匹配如h1,h2,h3之类的标题元素

内容过滤选择器
$("div:contains('hello')") 匹配包含给定文本的元素
$("td:empty")匹配所有不包含子元素或者文本的空元素
$("div:has(p)")匹配含有选择器所匹配的元素的元素
$("td:parent") 匹配含有子元素或者文本的元素
属性过滤选择器
$("input[name='news']")匹配属性值等于news的元素
$("input[name!='news']") 匹配属性值不等于news的元素
$("input[name^='news']") 匹配属性值以news开头的元素
$("input[name$='news']") 匹配属性值以news结尾的元素
$("input[name*='news']") 匹配属性值包含news的元素
$("input[id][name$='news']") 匹配属性id,属性name以news结尾的元素
子元素过滤选择器
$("ulli:nth-child(2)") 匹配其父元素下的第2个子元素, 匹配元素的序号,从1开始
$("ulli:first-child") 匹配第一个子元素。
$("ulli:last-child")匹配最后一个子元素。
$("ulli:only-child")匹配某个父元素中唯一的子元素


4. 表单对象属性选择器
$(":input") 匹配所有input, textarea, select和 button 元素
$("input:text")匹配所有的单行文本框。
$("input:password")匹配所有密码框。
$("input:checked")匹配所有被选中的元素。
$("input:radio")匹配所有单选按钮
$("input:checkbox")匹配所有复选框
$("input:submit")匹配所有提交按钮
$("input:image")匹配所有图像域。
$("input:reset")匹配所有重置按钮。
$("input:button")匹配所有按钮。
$("input:file")匹配所有文件域。
$("input:hidden")匹配所有不可见元素。
--------------------------------------------------------------------------------------------------------------------------

A、 创建节点(创建方法)
Var $节点名称=$(“标签”);

B、 [重点]添加节点

内部前置:prepend() 或者 prepend to()

内部后置:append() 或者 append to()

外部之前:before() 或者InsertBefore()

外部之后:after() 或者insertAfter()

C、 删除节点

删除—remove()

清空—empty()

D、 [重点]Ajax事件:$.Ajax();


第二层:$.post(); $.get(); 对象.load();

第三层:$.getJSON(); $.getScript();




Ø $.ajax()语法:
例子:
$.ajax({
url: "/ForgetCard/ForgetLogin",//方法路径URL
data: {
strUser:$("#textUser").val(), //申请人
strForgetDate:$("#txtForgetDate").val(), //忘记打卡日
strLoginDate: $("#txtLoginDate").val(), //登录日
strType:$("#drpType").val(), //类型
strForgetType:$("#drpForgetCard").val(), //忘记打卡类型
strBeiko:$("#txtBeiko").val(), //备注
strWitness:$("#drpWiness").val() //证明人
},//参数
dataType: 'json',
type: 'POST',
async: false,//默认异步调用 false:同步
success: function (data) {
var retInfo = eval(data);
//提交成功
if (retInfo == true) {
alert("提交成功!");
$("#txtForgetDate").val(""); //忘记打卡日
$("#txtLoginDate").val(""); //登录日
$("#drpType").val("0"); //类型
$("#txtBeiko").val(""); //备注
$(".ForgetCard").css("visibility", "hidden");
window.parent.location.reload;
}
},
error: function () {
alert('提交数据失败!');
}
})



$.ajax({
url:"/HolidayManage/SelectData",
data: {
strbmID: function () { return strBmId}, //申请人所在部门CD 
strUser: function () { return strUser}, //申请人
strBEGIN_TIME: function () { return strBEGIN_TIME}, //请假起始时间 
strEND_TIME: function () { return strEND_TIME} //请假结束时间
},
dataType:'json',
type:'POST',
async:false,
success:function (data) {
$("#tblView tbody").html("");
var strTrsContent = "";
var strTrsContent = "";
$.each(eval(data), function (n, value) {
strTrsContent = "";
strTrsContent += "<tr>";
//请假单号
strTrsContent += "<td style='width:125px;'>" +value.HOLIDAY_CD + "</td>";
//姓名
strTrsContent += "<td style='width:95px;'>" +value.STAFF_NAME + "</td>";
//所属部门
strTrsContent += "<td style='width:168px;' >" + value.DEP_Name+ "</td>";
//请假类别
strTrsContent += "<td style='width:205px;' >" + value.O_TYPE +"</td>";
//开始时间
strTrsContent += "<td style='width:180px;' >" +value.O_BEGIN_TIME + "</td>";
//结束时间
strTrsContent += "<td style='width:180px;' >" +value.O_END_TIME + "</td>";
//审批状态
strTrsContent += "<td style='width:180px;' >" +value.O_APPROVE_STATE + "</td>";


if (value.O_APPROVE_STATE == "待审批") {
//操作
strTrsContent += "<td style='width:250px'><input type='button'name='" + value.HOLIDAY_CD + "' id='btnSP' class='btn'value='审核' ><input type='button' name='" +value.HOLIDAY_CD + "' class='btn' id='btnDel' value='删除'/></td>";
} else {
strTrsContent += "<td style='width:250px'><input type='button'name='" + value.HOLIDAY_CD + "' id='btnSP' style='display:none' class='btn' value='审核'><input type='button' name='" + value.HOLIDAY_CD + "' style='display:none' id='btnDel' value='删除'/></td>";

}
$("#tblView tbody").append(strTrsContent);

});
},
error:function () {
alert('提交数据失败!');
}
});


Ø $.ajax({参数列表});

参数列表:

url—请求路径

type—请求方式(post/get)
默认为get

data—指定参数数据
dataType—指定响应数据格式json(json数据)、text(文本)、xml(xml格式数据)、script(脚本)

success—请求成功的回调函数
error—请求失败的回调函数


l $.7(“请求路径”,[参数列表],回调函数,”响应的数据格式”);
l $.get(“请求路径”,[参数列表],回调函数,”响应的数据格式”);

u $.getJSON (“请求路径”,回调函数);
jQuery中常用getJSON来调用并获取远程的JSON字符串,将其转换为JSON对象,如果成功,则执行回调函数。原型如下:

jQuery.getJSON( url, [data], [callback] ) 跨域加载JSON数据。

url: 发送请求的地址
data : (可选) 待发送key/value参数
callback: (可选) 载入成功时的回调函数

主要用于客户端获取服务器JSON数据。简单示例:

服务器脚本,返回JSON数据:

代码如下:

// $.getJSON.php

$arr=array("name"=>"zhangsan", "age"=>20);
$jarr=json_encode($arr);
echo $jarr;

注意两点:第一:在返回客户端之前,先用PHP函数json_encode将要返回的数据进行编码。第二:返回到客户端用的是echo,而不是return。

下面是核心的客户端代码:
代码如下:

<script language="javascript" type="text/javascript"src="./js/jquery.js"></script>
<script language="javascript" type="text/javascript">
function getjs()
{
$.getJSON("$.getJSON.php", {}, function(response){
alert(response.age);
});
}
<input type="button" name="btn" id="btn"value="test" onClick="javascript:getjs();"/>

n $.getScript (“js脚本文件”);
jQuery.getScript("/path/to/myscript.js",function(data, status, jqxhr) {
/* 
做一些加载完成后需要执行的事情
*/ 
});



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值