美文网首页
JQuery学习(二)--遍历和操作文档

JQuery学习(二)--遍历和操作文档

作者: nzdnllm | 来源:发表于2019-05-29 18:48 被阅读0次

1.省市联动案例

<tr>
    <td>籍贯</td>
    <td>
    <!--确定事件,通过函数传参的方式拿到改变后的城市-->
        <select id="province">
                <option>--请选择--</option>
                    <option value="0">湖北</option>
                <option value="1">湖南</option>
                <option value="2">河北</option>
                <option value="3">河南</option>
        </select>
        <select id="city">
        </select>
    </td>
</tr>

(1)步骤
<1>确定事件(change),在绑定的函数里面获取用户选择的省份、
<2>创建二维数组来存储省份和城市
<3>遍历二维数组中的省份,与用户选择的省份进行比较(使用JQ的遍历操作)
<4>遍历数组中的城市
<5>创建一个文本节点
<6>创建option元素节点
<7>将文本节点添加到元素节点中(使用JQ的文档操作方法)
<8>获取第二下拉列表,将option元素节点添加进入(使用JQ添加操作)
<9>清除第二个下拉列表option内容
(2)重点
<1>JQ的遍历操作
方法一:each(callback); 链接:http://jquery.cuishifeng.cn/each.html
callback:指的是对于每个匹配的元素所要执行的函数
示例:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>使用对象访问方式遍历</title>
        <script type="text/javascript" src="../../js/jquery-1.11.0.min.js" ></script>
        <script>
            $(function(){
                // 全选/ 全不选
                $("#checkallbox").click(function(){
                    var isChecked = this.checked;
                    //使用对象访问的方式进行遍历,语法:$().each(function(){})
                    $("input[name='hobby']").each(function(){
                        this.checked = isChecked;
                    });
                });
            });
        </script>
    </head>
    <body>
        请选择您的爱好<br/>
        <input type="checkbox" id="checkallbox" /> 全选/全不选 <br/>
        <input type="checkbox" name="hobby" value="足球" /> 足球
        <input type="checkbox" name="hobby" value="篮球" /> 篮球
        <input type="checkbox" name="hobby" value="游泳" /> 游泳
        <input type="checkbox" name="hobby" value="唱歌" /> 唱歌 <br/>
    </body>
</html>

说明:
$("input[name='hobby']")是被遍历的对象(一个集合)
方法二:$.each(object,[callback]) ; 链接:http://jquery.cuishifeng.cn/jQuery.each.html
object:需要遍历的对象或数组。
callback:每个成员/元素执行的回调函数。

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>使用工具类遍历方式</title>
        <script type="text/javascript" src="../../js/jquery-1.11.0.min.js" ></script>
        <script>
            /**
             * 说明:两种遍历方式,掌握其中一种即可,个人觉得此种方式较容易理解!
             */     
            $(function(){
                // 全选/ 全不选
                $("#checkallbox").click(function(){
                    var isChecked = this.checked;
                    //使用工具类遍历方式,语法:$.each(array,function(i,j){})  其中array代表被遍历的对象,i代表角标,j代表遍历后的内容。
                    $.each($("input[name='hobby']"), function(i,j) {
                        j.checked = isChecked;
                    });
                });
            });
        </script>
    </head>
    <body>
        请选择您的爱好<br/>
        <input type="checkbox" id="checkallbox" /> 全选/全不选 <br/>
        <input type="checkbox" name="hobby" value="足球" /> 足球
        <input type="checkbox" name="hobby" value="篮球" /> 篮球
        <input type="checkbox" name="hobby" value="游泳" /> 游泳
        <input type="checkbox" name="hobby" value="唱歌" /> 唱歌 <br/>
    </body>
</html>

说明:使用工具类遍历方式,语法:$.each(array,function(i,j){}) 其中array代表被遍历的对象,i代表角标,j代表遍历后的内容。
<2>使用JQ进行文档操作
---append(content):向每个匹配的元素内部追加内容
content:要追加到目标中的内容 链接:http://jquery.cuishifeng.cn/append.html
说明: A.append(B) :将B追加到A的内容末尾处
---appendTo(content):
content:用于被追加的内容; 链接:http://jquery.cuishifeng.cn/appendTo.html
说明:A.appendTo(B) :将A追加到B的内容末尾处
---empty() :删除匹配的元素集合中所有的子节点。(不会删除标签)
链接:http://jquery.cuishifeng.cn/empty.html
---remove([expr]):从DOM中删除所有匹配的元素。(会删除标签)
这个方法不会把匹配的元素从jQuery对象中删除,因而可以在将来再使用这些匹配的元素。但除了这个元素本身得以保留之外,其他的比如绑定的事件,附加的数据等都会被移除。
[expr]:JQ的表达式 链接:http://jquery.cuishifeng.cn/remove.html
JS代码示例:

<script>
            $(function () {
                //2.创建省市数据二维数组
                var cities = new Array(3);
                cities[0]=new Array("武汉市","襄阳市","黄冈市","荆州市");
                cities[1]=new Array("长沙市","彬州市","株洲市","岳阳市");
                cities[2]=new Array("石家庄市","邯郸市","廊坊市","保定市");
                cities[3]=new Array("郑州市","洛阳市","开封市","安阳市");
                $("#province").change(function () {
                    //10.清除第二个下拉列表的内容
                    $("#city").empty();
                    //1.获取用户选择的省份
                    var val = this.value;
                    //3.遍历二维数组中的省份
                    $.each(cities,function (i, n) {
                        // alert(i+":"+n);
                        //4.判断是否为用户选择的省份
                        if(val==i){
                            //5.遍历用户选择省份下的城市
                            $.each(cities[i],function (j,m) {
                                // alert(i+":"+n);
                                //6.创建城市文本节点
                                var textNode = document.createTextNode(m);
                                //7.创建option元素节点
                                var opEle = document.createElement("option");
                                //8.将城市文本节点添加到元素节点
                                $(opEle).append(textNode);
                                //9.将option元素节点,添加到第二个下拉列表中
                                $(opEle).appendTo($("#city"));
                            })
                        }
                    })
                })
            })
</script>

相关文章

  • JQuery学习(二)--遍历和操作文档

    1.省市联动案例 (1)步骤<1>确定事件(change),在绑定的函数里面获取用户选择的省份、<2>创建二维数组...

  • jQuery

    jQuery jQuery是一个快速,小,功能丰富的JavaScript库。 它使 HTML文档遍历和操作、事件处...

  • 04.jQuery 遍历

    jQuery遍历 DOM:Document Object Model 文档对象模型; 通过 jQuery 遍历,可...

  • JQuery 命令汇总

    jQuery 选择器 jQuery 效果函数 jQuery 文档操作方法 这些方法对于 XML 文档和 HTML ...

  • 03.jQuery html

    jQuery文档操作 jQuery属性操作 jQuery css操作 image.png

  • jQuery学习(1)猜数字游戏

      jQuery是一个快捷、小型且特征丰富的JavaScript库。它使得HTML文档遍历及操作,事件处理,动画,...

  • jQuery 的简易实现思路

    概述 总所周知,jQuery是一个早期非常强大的js库,它小巧、快速、特性丰富,它在HTML的文档遍历、DOM操作...

  • jQuery 文档操作方法

    jQuery 文档操作方法 这些方法对于 XML 文档和 HTML 文档均是适用的,除了:html()。 方法描述...

  • 锋利的 jQuery | 第2章_jQuery 选择器

    选择器是 jQuery 的根基,在 jQuery 中,对事件处理、遍历 DOM 和 Ajax 操作都依赖于选择器。...

  • jQuery(二)

    offset audio和video each遍历jQuery对象 each遍历jQuery对象 了解date 多...

网友评论

      本文标题:JQuery学习(二)--遍历和操作文档

      本文链接:https://www.haomeiwen.com/subject/chadtctx.html