zoukankan      html  css  js  c++  java
  • Jquery 获取表单值如input,select等方法

    1 if($("input[name=item][value='val']").attr('checked')==true) //判断是否已经打勾
    name即控件name属性,value即控件value属性
    可以不指定属性值,因一组checkbox的value值都会保存其在数据库中对应的id,最好写成如下方式
    if($("input[name=row_checkbox]").attr('checked')==true)
    {
    alert("j");
    }
    else
    {
    alert("请选择数据!");
    }
    另,还可以写成if($("[name=row_checkbox]").attr('checked')==true)
     
    radio使用:
    <body>
    <form id="form1" >
    <input type="radio"  name="sex" value="男" />男
    <input type="radio" name="sex" value="女" />女
    <br />
    <input type="radio"  name="list" value="十分满意" />十分满意
    <input type="radio" name="list" value="满意" />满意
    <input type="radio" name="list" value="不满意" />不满意
    <input type="radio" name="list" value="非常差" />非常差
    <br />
    <input type="submit" value="submit"  id="btnSubmit" />
    </form>
    </body>
    </html>
     
        $(function(){
             $("#btnSubmit").click(function(){
                var val=$('input:radio[name="sex"]:checked').val();
                if(val==null){
                    alert("什么也没选中!");
                    return false;
                }
                else{
                    alert(val);
                }
                var list= $('input:radio[name="list"]:checked').val();
                if(list==null){
                    alert("请选中一个!");
                    return false;
                }
                else{
                    alert(list);
                }           
             });
         });

    $('#checkbox').attr('checked'); 返回的是checked或者是undefined,不是原来的true和false了,有关此问题的解决方法如下

    在JQ1.6之前的版本,我们会这样写我们的代码: 

     
    1. <input type='checkbox' id='cb'/>   
    2. <script>   
    3. //获取是否选中   
    4. var isChecked = $('#cb').attr('checked');   
    5.   
    6. //设置选中   
    7. $('#cb').attr('checked',true);   
    8. </script>   


    这样写在JQ1.6之前完全没问题,可是当我们升级JQ1.6到更高的版本时,问题就来了,此时我们会发现: 
    $('#cb').attr('checked'); 返回的是checked或者是undefined,不是原来的true和false了。 并且checked属性在页面初始化的时候已经初始化好了,不会随着状态的改变而改变。所以如果checkbox一开始是选中的,那么返回的是checked,如果一开始没被选中,则返回的是undefined

     
    1. <input type='checkbox' id='cb'/>   
    2. <script>   
    3. //获取是否选中   
    4. var isChecked = $('#cb').prop('checked');   
    5. //或   
    6. var isChecked = $('#cb').is(":checked");   
    7. //设置选中   
    8. $('#cb').prop('checked',true);   
    9. </script>   


    分析了其中的原因,可以这样理解: 
    它将“属性”与“特性”做了区别,属性指的是“name,id”等等,特性指的是“selectedIndex, tagName, nodeName”等等。 
    JQ1.6之后,可以通过attr方法去获得属性,通过prop方法去获得特性

      

      1. $("#cb").attr("tagName"); //undefined   
      2. $("#cb").prop("tagName"); //INPUT   

    更多:http://blog.sina.com.cn/s/blog_70491fc60100t5kw.html

  • 相关阅读:
    centos下修改hosts文件以及生效命令
    CentOS 7 上安装(LAMP)服务 Linux,Apache,MySQL,PHP
    sqlserver下载地址及密匙
    npm/gulp/nodejs
    sp_addlinkedserver 跨服务器连接数据库查询
    sql使用临时表循环
    nodejs和npm
    扫描输入后自动定位到下一个输入框
    Unable to load the specified metadata resource
    mysql保存乱码(C#)
  • 原文地址:https://www.cnblogs.com/youxin/p/3835555.html
Copyright © 2011-2022 走看看