zoukankan      html  css  js  c++  java
  • jquery笔记

    选取子元素后代元素的时候,需要加一个空格

    //选取class为one的div元素下的第2个子元素
    $("div.one :nth-child(2)")
    
    //选取class为one的div父元素下的第一个子元素
    $(".one :first-child")
    
    //下拉框被选择,如果不加空格,获取不到,选择的是select下面的option,是子元素
    $("select selected")
    $("#btn5").click(function(){
    //实际被选择的不是 select, 而是 select 的 option 子节点
    //所以要加一个 空格. 
    //var len = $("select :selected").length
    //alert(len);
    
    //因为 $("select :selected") 选择的是一个数组
    //当该数组中有多个元素时, 通过 .val() 方法就只能获取第一个被选择的值了. 
    //alert($("select :selected").val());
    
    //jQuery 对象遍历的方式使 each, 在 each 内部的 this 是正在
    //得到的 DOM 对象, 而不是一个 jQuery 对象
    $("select :selected").each(function(){
        alert(this.value);
    });
    });
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
            <title>Untitled Document</title>
            <script type="text/javascript" src="scripts/jquery-1.7.2.js"></script>
            <script type="text/javascript">
            
                $(function(){
                    //1. 为 #address 添加 focus(获取焦点), blur(失去焦点) 响应函数
                    $(":text").focus(function(){
                        //2. 当获取焦点时, 若 #address 中是默认值
                        //(defaultValue 属性, 该属性是 DOM 对象的属性), 就使其值置为 ""
                        var val = $(this).val();
                        
                        if(val == this.defaultValue){
                            $(this).val("");
                        }
                    }).blur(function(){
                        //3. 失去焦点是, 若 #address 的值在去除前后空格后等于 ""
                        //则为其恢复默认值. 
                        var val = this.value;    
                        if($.trim(val) == ""){
                            this.value = this.defaultValue;
                        }
                    });
                    
                    //2. 
                    $(":button:eq(1)").click(function(){
                        $("#single").val("选择3号");
                    });
                    
                    $(":button:eq(2)").click(function(){
                        $("#multiple").val(["选择2号", "选择4号"]);                
                    });
                                    
                    $(":button:eq(3)").click(function(){
                        $(":checkbox[name='c']").val(["check2", "check4"]);
                    });
                    
                    $(":button:eq(4)").click(function(){
                        //即便是为一组 radio 赋值, val 参数中也应该使用数组. 
                        //使用一个值不起作用。 
                        $(":radio[name='r']").val(["radio2"]);
                    });
                    
                    $(":button:eq(5)").click(function(){
                        //val() 可以直接获取 select 的被选择的值. 
                        alert($("#single").val());
                        alert($("#multiple").val());
                        
                        //val 不能直接获取 checkbox 被选择的值
                        //若直接获取, 只能得到第一个被选择的值. 
                        //因为 $(":checkbox[name='c']:checked") 得到的是一个
                        //数组. 而使用 val() 方法只能获取数组元素的第一个值
                        //若希望打印被选择的所有制, 需要使用 each 遍历. 
                        //alert($(":checkbox[name='c']:checked").val());
                        $(":checkbox[name='c']:checked").each(function(){
                            alert(this.value);
                        });
                        
                        //而 raido 被选择的只有一个, 所以可以直接使用 val() 方法. 
                        alert($(":radio[name='r']:checked").val());
                    });
                    
                })
            
            </script>
        </head>
        <body>
            <input type="text" id="address" value="请输入邮箱地址"><br>
            <input type="text" id="password" value="请输入邮箱密码"><br>
            <input type="button" value="登录">
            
            <br><br><br>
            
            <input type="button" value="使单选下拉框的'选择3号'被选中"/>
            <input type="button" value="使多选下拉框选中的'选择2号'和'选择4号'被选中"/><br>
            <input type="button" value="使多选框的'多选2'和'多选4'被选中"/>
            <input type="button" value="使单选框的'单选2'被选中"/><br>
            <input type="button" value="打印已经被选中的值"><br>
     
            <br/>
            
            <select id="single">
              <option>选择1号</option>
              <option>选择2号</option>
              <option>选择3号</option>
            </select>
            
            <select id="multiple" multiple="multiple" style="height:120px;">
              <option selected="selected">选择1号</option>
              <option>选择2号</option>
              <option>选择3号</option>
              <option>选择4号</option>
              <option selected="selected">选择5号</option>
            </select>
            
            <br/><br/>
    
            <input type="checkbox" name="c" value="check1"/> 多选1
            <input type="checkbox" name="c" value="check2"/> 多选2
            <input type="checkbox" name="c" value="check3"/> 多选3
            <input type="checkbox" name="c" value="check4"/> 多选4
            
            <br/>
            
            <input type="radio" name="r" value="radio1"/> 单选1
            <input type="radio" name="r"  value="radio2"/> 单选2
            <input type="radio" name="r"  value="radio3"/> 单选3
    
        </body>
    </html>
    View Code
    这个博客主要是javaEE相关或者不相关的记录, hadoop与spark的相关文章我写在下面地址的博客啦~ http://www.cnblogs.com/sorco
  • 相关阅读:
    PAT 1006 Sign In and Sign Out
    PAT 1004. Counting Leaves
    JavaEE开发环境安装
    NoSql数据库探讨
    maven的配置
    VMWARE 下使用 32位 Ubuntu Linux ,不能给它分配超过3.5G 内存?
    XCODE 4.3 WITH NO GCC?
    在苹果虚拟机上跑 ROR —— Ruby on Rails On Vmware OSX 10.7.3
    推荐一首让人疯狂的好歌《Pumped Up Kicks》。好吧,顺便测下博客园可以写点无关技术的帖子吗?
    RUBY元编程学习之”编写你的第一种领域专属语言“
  • 原文地址:https://www.cnblogs.com/orco/p/6363619.html
Copyright © 2011-2022 走看看