jquery入门

第一天:选择器相关
1.html()与.text()
.html()取得第一个匹配元素的html内容。会带有标签,.text()仅是里边的文本
.text()取得所有匹配元素的内容。结果是由所有匹配元素包含的文本内容组合起来的文本
2.
$("a")选择所有的连接
$(".a")选择所有class="a"的标签
$("#a")选择id="a"的标签
3.
$("span[@name=a]")选择了<span name="a"></span>
$("span[@love=a]")选择了<span love="a"></span>
$("li#a")          选择了<li id="a"><li>
$("li.a")          选择了<li class="a"><li>
$("li .a")         选择了<li class="a"><span class="a">span被选择了</span><li>
由于可以看出 连在一起是指li并且class="a" 中间有空格是指<li>下的class="a"的元素,同CSS选择器的道理一样
$("div[@id=form]").hide("slow");找到<div id="form"><span></span></div>并且这个层隐藏
$("div[@id=form]").children().hide("slow")找到<div id="form"><span>span才是被找到</span></div>并隐藏
$("h1:contains('换个写法')")找到<h1>换个写法</h1>
$("h1 :contains('换个写法')")找到    <h1><span>换个写法</span></h1><br />
由此可以看出,连在一起是找h1中包含'换个写法'的内容,有空格是找<h1>的下一级元素中含中'换个写法'的内容
4.
$("ul>li:odd") 偶数行
$("ul>li:even") 奇数行
5 var a=$("select[@name=class] option[@selected]");
   var b=$("select[@name=class1]");
   b.append(a);
从一个下拉列表把内容放到另一个下拉列表里
6
$("a").parent("p")   只能找到<p>段<a href="#">落</a>一</p>    直接关系
$("a").parents("p") 可以找到<p>段<em><a href="#">落</a></em>二</p> 所有的父
$("p").eq(0)找到第一个p
$("p:eq(0)")同上
$("p:visible") 所有可见的p
7
$("div:first") 找到第一个div
$("div:first-child") div的父元素的第一个元素是div才匹配
以上基本上是写了下选择器,更多参考
http://docs.jquery.com/Selectors
第二天:ajax相关
首先看下json,当然ajax可以返回xml.html,json等
json_encode后的数据格式总结
一,对象
结果为hash表,就是{"键":"值","键":"值"}这样的形式,为js可以识别的对象
二,一维索引数组
结果为数组['元素一','元素二'],为js可以识别的数组
三,一维相关数组
结果为hash表,为js可以识别的对象
四,多维索引数组
结果为[["a","b"],["c","d"]]这样的形式,为js可以识别的数组
五,多维相关数组
结果为[{"1":"a","2":"b"},{"1":"c","2":"d"}],外边是js可以识别的数组,中间是hash
对于hash的处理方式
<script>
var json={"title":"a","name":"b","age":"c"};
alert(json.age);
</script>
对于数组的处理方式
<script>
var json=["a","b","c"];
alert(json[1]);
</script>
之所以总结,是因为我对这些不熟,遇到这样子的我就套上这些
OK,现在开始看jquery处理ajax
$.ajax()为通用方式
其中间必须是一个hash表即,形式为{键:值,键:值}的形式
参数
type:请求方式,默认为get,如:type:"post"
url :ajax请求的url        如:url :"ajax.php" 也可以是url:"ajax.php?id=5"这样子id可以通过$_GET['id']得到
data:传递的参数: 
如:data:"name=terry&age=30" 具体如何得到数据($_GET[],$_POST[])取决于上边的type.
如:data:{name:"terry",age:"30"},此种形式会转成"name=terry&age=30"
dateType:返回数据的方式,默认为html,
>>>>>>>>如果返回json下边有个例子是处理这种类型的返回的数据<<<<<<<<
ifModified:默认为false,如果为true,当数据没有变化时请求不成功
error:请求失败是执行的函数
timeout:请求的时间,超过此时间,请求失败
complete:请求结束后执行的函数,不管请求成功或失败
第三天:
昨天写了下ajax的通用方法:今天看下其它的方法
load(url,[data],[callback]),
默认是GET方式:如果load("ajax.php")用GET方式提交数据;
如果有任何参数:如load("ajax.php","name=terry");刚用post方式提交数
$.get(url,[data],[callback])用get方式向远程页面传递参数

$.get('ajax.php',{name:"terry",id:5},function(msg){
        $("#content").html(msg);
})
以GET方式得到数据并放到层id为content的层中
$.post(url,[data],[callback])同上,但数据以post方式提交
$.getJSON(url,[data],[callback])
以get方式获得json数据,这里重点写下:
如果返回的数据为数组
如["a","b","c"]处理方式
$.each(["a","c","c"].function(i){alert(this)})
返依次弹出a,b,c
如果返回的数据为hash对象
如{"name":"terry","age":"25"}处理方式
$.each(msg,function(i){
            alert(i+"="+this);
})
刚依次弹出name=terry,age=25
就是说对于数组,i为0.1.2等,对于hash对象i为键
如果返回的数据外边是数组,里边是hash对象
[{"name":"terry","age":"25"},{"name":"abc","age":"30"}],刚处理方式
function jq(){
    $.getJSON('ajax.php',function(msg){
        $.each(msg,function(i){
            $.each(this,function(j){
                alert(j+this);
            });
        })
    })
}

一个处理时的效果
function jq(){
$.get('ajax.php',function(msg){
    $("#content").html(msg);
    $("#con").html("处理结束");
});
$("#con").html('处理中......');
}
posted @ 2008-11-09 16:13  aoogur  阅读(395)  评论(0编辑  收藏  举报