javascript (三)

表单过滤器

  • :input

    匹配所有input,textarea,select和button元素

    $(":input")

  • :text

    匹配所有的单行文本框

    $(":text")

    含义:查找type属性为text的input元素

  • :password

    匹配所有密码框

    $("password")

    含义:查找所有type属性为password的input元素

  • :radio

    匹配所有单旋按钮

    $(":radio")

    含义:查找所有type属性为radio的input元素

  • :checkbox

    匹配所有复选框

    $(":checkbox")

    含义:查找所有type属性为checkbox的input元素

  • :submit

    匹配所有提交按钮

    $(":submit")

    含义:查找所有type属性为submit的input元素

  • :reset

    匹配所有重置按钮

    $(":reset")

    含义:查找所有type属性为reset的input元素

  • :button

    匹配所有按钮

    $(":button")

    含义:查找所有type属性为button的input元素和按钮元素

  • :file

    匹配所有文件域

    $(":file")

    含义:匹配所有type属性为file的input元素

  • :hidden

    匹配所有不可见元素,或者type为hidden的元素

  • :enabled

    匹配所有可用元素

  • :disabled

    匹配所有不可用元素

  • :checked

    匹配所有被选中元素(复选框、单选框,不包括select中的option)

    $("input:checked")

    含义:查找所有选中的复选框元素

  • :selected

    匹配所有选中的option元素(下拉列表中)

    $("select option:selected")

元素筛选

  • filter(expr|obj|ele|fn)

    筛选出与指定表达式匹配的元素集合

    $("p").filter(".selected")

    含义:匹配class属性为selected的p元素

  • is()

    判断是否匹配给定的选择器,只要有一个匹配就返回true。

jQuery属性操作

html()

可以设置和获取起始标签和结束标签中的内容,和dom属性的innerHTML一样。

text()

可以设置和获取起始标签和结束标签中的文本,和dom属性的innerText一样

val()

可以设置和获取表单项的value属性值

val()还可以批量操作选中状态,如

$(":radio").val(["radio2"])

含义:设置value为radio2的单选框成为被选中状态

attr()

可以设置和获取属性的值,不推荐操作checked、eadonly、selected、disabled等等。因为返回值可能是undefined。

prop()

可以设置和获取属性的值,只推荐操作checked、readonly、selected、disabled等等。

全选、全不选、反选练习

<!DOCTYPE html>
<html>
    <head>
    <meta charset="UTF-8">
    <!--引入jQuery库-->
    <script type="text/javascript" src="../lib/jquery-1.7.2.js"></script>
    <script type="text/javascript">

        $(function(){
            //给全选绑定单击事件
            $("#checkedAllBtn").click(function(){
                $(":checkbox").prop("checked",true);
            });
            //给全不选绑定单击事件
            $("#checkedNoBtn").click(function(){
                $(":checkbox").prop("checked",false);
            });
            //给反选绑定单击事件
            $("#checkedRevBtn").click(function(){
                $(":checkbox[name='items']").each(function(){
                    this.checked=!this.checked;
                })

                //如果反选之后所有球类都被选择了,那么全选框要勾上
                //获取此时一共有几个选项
                var allCount=$(":checkbox[name='items']").length;
                //获取当前被选中的选项有几个
                var checkedCount=$(":checkbox[name='items']:checked").length;
                //根据情况给全选框的checked赋值
                $("#checkedAllBox").prop("checked",allCount==checkedCount);
            })
            //给提交按钮绑上单击事件
            $("#sendBtn").click(function(){
                $(":checkbox[name='items']:checked").each(function(){
                    alert(this.value);
                });
            });
            //给全选框绑上单击事件
            $("#checkedAllBox").click(function(){
                $(":checkbox[name='items']").prop("checked",this.checked);
            });

            $(":checkbox[name='items']").click(function(){
                var allCount=$(":checkbox[name='items']").length;
                var checkedCount=$(":checkbox[name='items']:checked").length;
                $("#checkedAllBox").prop("checked",allCount==checkedCount);
            });

        });
    </script>
    </head>
    <body>
        <form>
            你爱好的运动是?
            <input type="checkbox" id="checkedAllBox" value="haha">全选/全不选
            <br>
            <input type="checkbox" name="items" value="足球">足球
            <input type="checkbox" name="items" value="篮球">篮球
            <input type="checkbox" name="items" value="羽毛球">羽毛球
            <input type="checkbox" name="items" value="乒乓球">乒乓球
            <br>
            <input type="button" id="checkedAllBtn" value ="全选">
            <input type="button" id="checkedNoBtn" value="全不选">
            <input type="button" id="checkedRevBtn" value="反选">
            <input type="button" id="sendBtn" value="提交">
      </form>
    </body>
</html>

dom的增删改:

内部插入:


appendTo()

a.appendTo(b)

把a插入到b子元素末尾,成为最后一个子元素


prependTo()

a.prependTo(b)

把a插入到b所有子元素前面,成为第一个子元素


外部插入:


insertAfter()

a.insertAfter(b)

得到ba


insertBefore()

a.insertBefore(b)

得到ab


替换:


replaceWith()

a.replaceWith(b)

用b替换掉所有的a


replaceAll()

a.replaceAll(b)

用a替换掉所有b


删除:


remove()

a.remove()

删除a标签


empty()

a.empty()

清空a标签的内容

posted @ 2021-04-17 10:20  ice--cream  阅读(80)  评论(0编辑  收藏  举报