注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

IOS & JAVA KEY

(iMilo)

 
 
 

日志

 
 
关于我

All the splendor in the world is not worth a good friend!! Hello my friend!!

网易考拉推荐

检查复选框是否被选中--jQuery表单验证  

2011-02-26 20:24:24|  分类: JQuery |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

2011-02-10

l  检查复选框是否被选中

知识点:

假设有几个复选框,分别指定体育项目,单击提交按钮时请确认至少有一个复选框被选中,否则,显示错误消息。

说明:

find(expr)方法:搜索所有与指定表达式匹配的元素。这个函数是找出正在处理的元素的后代元素的好方法。

所有搜索都依靠jQuery表达式来完成。这个表达式可以使用CSS1-3的选择器语法来写。

参数expr----String类型,用于查找的表达式。

each(callback)方法:以每一个匹配的元素作为上下文来执行一个函数。

意味着,每次执行传递进来的函数时,函数中的this关键字都指向一个不同的DOM元素(每次都是一个不同的匹配元素)。而且,在每次执行函数时,都会给函数传递一个表示作为执行环境的元素在匹配的元素集合中所处位置的数字值作为参数(从零开始的整型)。 返回 'false' 将停止循环 (就像在普通的循环中使用 'break')。返回 'true' 跳至下一个循环(就像在普通的循环中使用'continue')

event.preventDefault()方法:用于防止提交按钮把用户输入的数据发送到服务器。

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

Code

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

  <head>

    <title>jQuery表单验证--检查复选框是否被选中</title>

    <script type="text/javascript" src="rs/js/jquery.js"></script>

    <script type="text/javascript">

    <!--

    $(

<!--        function()-->

<!--        {-->

<!--            $('.error').hide();-->

<!--            $('.submit').click(-->

<!--                function(event)-->

<!--                {-->

<!--                    var count = 0;-->

<!--                    var amt = 0;-->

<!--                    $('form').find(':checkbox').each(-->

<!--                        function()-->

<!--                        {-->

<!--                            if($(this).is(':checked'))-->

<!--                            {-->

<!--                                count ++;-->

<!--                                amt += parseInt($(this).val());-->

<!--                            }-->

<!--                        }-->

<!--                    );-->

<!--                    if(count == 0)-->

<!--                    {-->

<!--                        $('p.result').hide();-->

<!--                        $('.error').show();-->

<!--                    }-->

<!--                    else-->

<!--                    {-->

<!--                        $('.error').hide();-->

<!--                        $('p.result').show();-->

<!--                        $('p.result').text('您的费用是¥' + amt + '.00');-->

<!--                    }-->

<!--                    event.preventDefault();-->

<!--                }-->

<!--            );-->

<!--        }-->

        //通过length方法检查复选框

        function()

        {

            $('.error').hide();

            $('.submit').click(

                function(event)

                {

                    var amt = 0;

                    var count = $('input:checked').length;

                    if(count == 0)

                    {

                        $('p.result').hide();

                        $('.error').show();

                    }

                    else

                    {

                        $('form').find(':checkbox').each(

                            function()

                            {

                                if($(this).is(':checked'))

                                {

                                    amt += parseInt($(this).val());

                                }

                            }

                        );

                        $('.error').hide();

                        $('p.result').show();

                        $('p.result').text('您的费用是¥' + amt + '.00');

                    }

                    event.preventDefault();

                }

            );

        }

    );

    //-->

    </script>

    <style type="text/css">

        .infobox{

            width: 50px;

        }

        .error{

            color: red;

            padding-left: 10px;

        }

        .submit{

            margin-left: 125px;

            margin-top: 10px;

        }

    </style>

  </head>

  <body>

  <form action="" method="post">

    体育项目:

    <input type="checkbox" id="ia" name="ab" value="50.00" class="infobox" />足球&nbsp;50.00&nbsp;

    <input type="checkbox" id="ib" name="bb" value="80.00" class="infobox" />篮球&nbsp;80.00&nbsp;

    <input type="checkbox" id="ic" name="cb" value="40.00" class="infobox" />排球&nbsp;40.00&nbsp;

    <input type="checkbox" id="id" name="db" value="60.00" class="infobox" />棒球&nbsp;60.00&nbsp;

    <input type="checkbox" id="ie" name="eb" value="10.00" class="infobox" />垒球&nbsp;10.00&nbsp;

    <p class="error">请至少选中一个体育项目</p>

    <p class="result"></p>

    <input class="submit" type="submit" value=" " />

  </form>

  </body>

</html>

  评论这张
 
阅读(2053)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017