DDR爱好者之家 Design By 杰米
功能描述:
在页面弹出一个form表单,ajax无刷新提交表单,表单需通过验证。
适用范围:
适用于在列表页面新增,修改记录。
需要加载的js文件:
jquery.min.js
artDialog.js
iframeTools.js
jquery.form.js
jquery.validate.js
实现思路:
在页面中将表单放到一个隐藏的容器中,用artdialog弹出该form并对form加上jqueryvalidate验证,提交采用jqueryform ajax提交,由于都是用现成的插件写作代码量很少。
<div id="g_cn" style="display:none;width:700px;"> <table id="base_info" class="tb_normal" width="96%"> <!-- 新闻内容 --> <tr> <td width=20% align="right" class="td_normal_title">花名:</td> <td><input readonly onFocus="this.blur()" type="text" id="bHname" value=""></td> <td width=20% align="right" class="td_normal_title">花名拼音:</td> <td><input readonly onFocus="this.blur()" id="bSpell" type="text" value=""></td> </tr> <tr> <td width=15% align="right" class="td_normal_title">姓名:</td> <td><input readonly onFocus="this.blur()" id="bEmpName" type="text" value=""></td> <td width=15% align="right" class="td_normal_title">性别:</td> <td><input readonly onFocus="this.blur()" id="bH_sex" type="text" value=""></td> </tr> <tr> <td width=15% align="right" class="td_normal_title">部门:</td> <td><input readonly onFocus="this.blur()" id="bDept" type="text" value=""></td> <td width=15% align="right" class="td_normal_title">职务:</td> <td><input readonly onFocus="this.blur()" id="bPosition" type="text" value=""></td> </tr> <tr> <td width=15% align="right" class="td_normal_title">申请时间:</td> <td><input readonly onFocus="this.blur()" id="bRegTime" type="text" value=""></td> <td width=15% align="right" class="td_normal_title">审核时间:</td> <td><input readonly onFocus="this.blur()" id="bAuditTime" type="text" value=""></td> </tr> <tr> <td width=15% align="right" class="td_normal_title">花名出处:</td> <td><input readonly onFocus="this.blur()" id="bFrom" type="text" value=""></td> <td width=15% align="right" class="td_normal_title">花名注释:</td> <td><input readonly onFocus="this.blur()" id="bRemark" type="text" value=""></td> </tr> </table> </div> a <script language="javascript" type="text/javascript"> //form验证 $.validator.addMethod('checkHname', function() { var validate=false; var hname = $("#r_c").val().replace(/\s/g,'').substr($("#r_c").val().length-2,2); $.ajax({ url : "/mipdemo/app/hname/index.php", data : { 'hname':hname, 'empid':$("#username").val() }, type : "get", async : false, cache : false, timeout : 10000, success : function(data) { eval('var result ='+ data); validate = result.pass; strHnameValideResult = result.message; if(validate === true || validate === 'true'){ $('#spell').val(result.pinyin); $('#hname').val(hname); } } }); return validate; }); //form验证 $.validator.addMethod('checkUser', function() { var validate=false; var username = $("#username").val(); if(username != "0"){ validate = true; } return validate; }); //form验证 $.validator.addMethod('checkSex', function() { var validate=false; $("input[name='h_sex']").each(function(){ if($(this).attr("checked")=="true"){ validate = true; } }) return validate; }); $('#myForm').validate({ errorPlacement: function(error, element){ if(element.attr("name") != "h_sex"){ element.parent().find('label').remove(); }else{ element.parent().find('label.onError,label.onCorrect').remove(); } element.parent().append(error.attr('class','onError')); }, success: function(label){ label.removeClass("onCorrect").removeClass("onError"); label.addClass('onCorrect').text(''); }, onkeyup: true, rules : { r_a:{ min:1 }, r_b:{ required:true }, r_c:{ required:true, minlength:2, maxlength:2, checkHname:true }, h_sex:{ required:true } }, messages : { r_a:{ min:'作品类型必选' } , r_b:{ required:'作品名称必填' }, r_c:{ required:'花名必填', minlength:"请输入2个中文", maxlength:"请输入2个中文", checkHname: '该花名已使用或不符合规则' }, h_sex:{ required:"性别必选" } } }); $(document).ready(function() { var options = { target: '#output2', success: showResponse // post-submit callback }; $('#myForm').ajaxForm(options); var alt =null; $("#List_ViewTable tr").click(function(){ var empid = $(this).find("input[type='checkbox']").val(); if(empid != ""){ $.ajax({ url : "/mipdemo/app/hname/index.php", data : { 'empid':empid }, type : "get", cache : false, timeout : 10000, success : function(data) { var result = $.parseJSON(data); $("#bHname").val(result.hname); $("#bSpell").val(result.spell); $("#bEmpName").val(result.EmpName); $("#bH_sex").val(result.h_sex); $("#bDept").val(result.deptName); $("#bPosition").val(result.PositionName); $("#bRegTime").val(result.regtime); $("#bAuditTime").val(result.audit_time); $("#bFrom").val(result.r_a + result.r_b); $("#bRemark").val(result.r_d); if(alt !=null){ alt.close(); } alt=art.dialog({ title:'用户信息', content: document.getElementById('g_cn'), width:750, button: [ { name: '保存', focus: true, callback: function () { $('#myForm').submit(); return false; } }, { name: '关闭', callback: function () { } } ] }); } }); } }); function showResponse(data){ if(alt !=null){ alt.close(); } if(data=='success'){ artDialog.alert('保存成功'); }else{ art.dialog.close(); artDialog.alert('保存失败'); } } }); </script>
以上所述是小编给大家介绍的jQuery validate+artdialog+jquery form实现弹出表单思路详解,希望对大家有所帮助!
DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米
暂无评论...
更新日志
2024年11月29日
2024年11月29日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]