继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

综合jQuery在表单中的应用

安卓入门学习视频
关注TA
已关注
手记 267
粉丝 68
获赞 387

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="refresh" content="600;url=单行文本框.html" /> <meta name="description" content="jquery表单应用中的单行文本框应用" /> <meta name="keywords" content="jQuery,表单,单行文本框,多行文本框,滚动条的高度,复选框的应用,下拉框的应用,表单验证" /> <title>表单应用</title> <style type="text/css">     /*input:hover,textarea:hover{border:1px solid #f00; pink;} IE6不支持这样的伪类,因此使用一下jquery来实现* /     .focus{border:1px solid #f00; pink;} < /span>    .msg{border:1px solid #666;}     .bigger,.smaller,.up,.down{cursor:pointer;}     #msg{width:auto; height:150px;}     #select1,#select2{width:100px; height:200px; float:left;}     .arrow span{display:block; height:50px; line-height:50px; cursor:pointer;} </style> <script type="text/javascript" src="../jquery-1.7.2.min.js"></script> <script type="text/javascript">     $(function(){         //单行文本框应用         $("input:lt(2)").focus(function(){             $(this).addClass("focus");         }).blur(function(){             $(this).removeClass("focus");         })                  //多行文本框应用         var $msg=$("#msg");         $(".bigger").click(function(){             if(!$msg.is(":animated")){                 if($msg.height()<500){                     $msg.animate({height:"+=50"},400);                 };             }         });         $(".smaller").click(function(){             if(!$msg.is(":animated")){                 if($msg.height()>50){                     $msg.animate({height:"-=50"},400);                 }             }         })                  //滚动条的高度         $(".up").click(function(){             if(!$msg.is(":animated")){                 $msg.animate({scrollTop:"-=10"},400);             }         });         $(".down").click(function(){             if(!$msg.is(":animated")){                 $msg.animate({scrollTop:"+=10"},400);             }         })                  //复选框的应用         //全选         $("#checkedAll").click(function(){             $("[name=items]:checkbox:lt(4)").prop("checked",true);         });         //全不选         $("#checkedNo").click(function(){             $("[name=items]:checkbox:lt(4)").prop("checked",false);         });         //反选         $("#checkedRev").click(function(){             $("[name=items]:checkbox:lt(4)").each(function(){                 /*$(this).attr("checked",!$(this).attr("checked"));//jquery方法显得有点复杂,下面是js方法*/                 this.checked=!this.checked;             })         });         //发送         $("#send").click(function(){             var str="你选中的是:\r\n";//\r\n是换行符             $("[name=items]:checkbox:checked").each(function(){                 str+=$(this).val()+"\r\n";             });             alert(str);         });         //用复选框来做全选与全部选         $("#selectedAll").click(function(){             /*if(this.checked){                 $("[name=items]:checkbox:gt(3)").prop("checked",true);             }else{                 $("[name=items]:checkbox:gt(3)").prop("checked",false);             }*/             //以上方法可以简写为:             $("[name=items]:checkbox:gt(3)").prop("checked",this.checked);         });         //是按钮复选框和其他复选框联动起来         $("[name=items]:checkbox:gt(3)").click(function(){             /*var flag=true;   //联动方法一:             $("[name=items]:checkbox").each(function(){                 if(!this.checked){                     flag=false;                 }             });             $("#selectedAll").prop("checked",flag);*/             //联动方法二:             var $tmp=$("[name=items]:checkbox:gt(3)");//定义一个临时变量             //使用filter()方法筛选出选中的复选框,并直接给selectedAll赋值             $("#selectedAll").prop("checked",$tmp.length==$tmp.filter(":checked").length);             //判断复选框的总数是否与选中的复选框数量相等                      });                  //下拉菜单的应用         //左边到右边         $("#add1").click(function(){             /*var $options=$("#select1 option:selected");//获取到选中的相             var $remove=$options.remove();  //删除下拉列表中选中的相             $remove.appendTo("#select2");   //追加给右边的下拉列表*/             //删除和追加这两个步骤可以由appendTo直接完成,以上方法可以写为:             var $options=$("#select1 option:selected");             $options.appendTo("#select2");         });         $("#add1_all").click(function(){             var $options=$("#select1 option");//获取所有选项             $options.appendTo("#select2");         });         $("#select1").dblclick(function(){//绑定双击事件             var $options=$("option:selected",this);             $options.appendTo("#select2");         });         //右边到左边         $("#add2").click(function(){             var $options=$("#select2 option:selected");             $options.appendTo("#select1");         });         $("#add2_all").click(function(){             var $options=$("#select2 option");             $options.appendTo("#select1");         });         $("#select2").dblclick(function(){             var $options=$("option:selected",this);             $options.appendTo("#select1");         });                  //表单验证         $("input.required").each(function(){             var $required=$("<strong class='high'>*</strong>");             $(this).parent().append($required);         }).blur(function(){             var $parent=$(this).parent();             $parent.find(".formtips").remove();             //验证用户名             if($(this).is("#username")){                 if(this.style==""||this.value.length<6){                     var errorMsg="请输入至少6位的用户名";                     $parent.append("<span class='formtips onError'>"+errorMsg+"</span>");                 }else{                     var okMsg="输入正确";                     $parent.append("<span class='formtips onSuccess'>"+okMsg+"</span>");                 }             };             //验证邮箱             if($(this).is("#email")){                 if(this.value==""||(this.value!=""&&!/.+@.+\.[a-zA-Z]{2,4}$/.test(this.value))){                     var errorMsg="请输入正确的email地址";                     $parent.append("<span class='formtips onError'>"+errorMsg+"</span>");                 }else{                     var okMsg="输入正确";                     $parent.append("<span class='formtips onSuccess'"+okMsg+"</span>");                 };             };         });     }) </script> </head>  <body>     <form action="#" method="post" id="regForm">         <fieldset><!--该标签将表单内的相关元素分组-->             <legend>个人基本信息</legend><!--该标签为<fieldset>/<figure>/<details>等标签定义标题-->             <div id="">                 <label for="username">名称:</label>                 <input type="text" id="name" />             </div>             <div>                 <label for="pass">密码:</label> <!--for 属性规定 label 与哪个表单元素绑定。-->                 <input type="password" id="pass" />             </div>             <div class="msg">                 <div>                     <span class="bigger">放大</span>                     <span class="smaller">缩小</span>                     <span class="up">向上</span>                     <span class="down">向下</span>                 </div>                 <label for="msg">详细信息:</label>                 <textarea id="msg">多行文本框应用,多行文本框高度变化。多行文本框应用,多行文本框高度变化。多行文本框应用,多行文本框高度变化。多行文本框应用,多行文本框高度变化。多行文本框应用,多行文本框高度变化。   多行文本框应用,多行文本框高度变化。多行文本框应用,多行文本框高度变化。                 </textarea>             </div>         </fieldset>          <fieldset>             <legend>你爱好的运动是?</legend>             <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="checkedAll" value="全  选" />             <input type="button" id="checkedNo" value="全不选" />             <input type="button" id="checkedRev" value="反  选" />             <input type="button" id="send" value="提  交" />         </fieldset>         <fieldset>             <legend>你喜爱的水果是?</legend>             <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="checkbox" id="selectedAll" value="全选/全部选" />全选/全不选             <input type="button" id="send2" value="提  交" />         </fieldset>         <fieldset>             <legend>下拉框的应用</legend>             <select multiple id="select1">                 <option>选项1</option>                 <option>选项2</option>                 <option>选项3</option>                 <option>选项4</option>                 <option>选项5</option>                 <option>选项6</option>                 <option>选项7</option>                 <option>选项8</option>             </select>             <div class="arrow" style="float:left">                 <span id="add1">选中添加到右边>></span>                 <span id="add1_all">全部添加到右边>></span>                 <span id="add2"><<选中添加到左边</span>                 <span id="add2_all"><<全部添加到左边</span>             </div>             <select multiple id="select2">             </select>         </fieldset>         <fieldset>             <legend>表单验证</legend>             <div class="int">                 <label for="username">用户名:</label>                 <input type="text" id="username" class="required" />             </div>             <div class="int">                 <label for="email">邮箱:</label>                 <input type="text" id="email" class="required" />             </div>             <div class="int">                 <label for="personinfo">个人资料:</label>                 <input type="text" id="personinfo" />             </div>             <div class="sub">                 <input type="submit" value="提交" id="send3" /><input type="reset" id="res" />             </div>         </fieldset>     </form> </body> </html>

注意:1、<fieldset>标签是使表单相关元素分组;

      2、<legend>标签是为<fieldset>、<figure>、<details>变浅定义标题用的;

      3、<label>标签中的for 属性规定 label 与哪个表单元素绑定。

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP