layer,Jquery,validate实现表单验证,刷新页面,关闭子页面
1、表单验证
//获取父层
var index = parent.layer.getFrameIndex(window.name);
//刷新父层
parent.location.reload();
//关闭弹出层
parent.layer.close(index);
HTML代码;
<form class="form form-horizontal" id="form-article-add" action="projectManagerVo/handle" method="post">
<input type="hidden" class="input-text" placeholder="" id="hidden" value = "0" name="status" >
<div class="row cl">
<label class="form-label col-xs-4 col-sm-2"><span class="c-red">*</span>项目编号:</label>
<div class="formControls col-xs-8 col-sm-9">
<input type="text" class="input-text" placeholder="" id="proNumber" name="proNumber" >
</div>
</div> <div class="row cl">
<label class="form-label col-xs-4 col-sm-2"><span class="c-red">*</span>项目名称:</label>
<div class="formControls col-xs-8 col-sm-9">
<input type="text" class="input-text" placeholder="" id="proName" name="proName" >
</div>
</div> <div class="row cl">
<label class="form-label col-xs-4 col-sm-2"><span class="c-red">*</span>承包单位:</label>
<div class="formControls col-xs-8 col-sm-9">
<input type="text" class="input-text" placeholder="" id="department" name="department" >
</div>
</div> <div class="row cl">
<label class="form-label col-xs-4 col-sm-2"><span class="c-red">*</span>负责人:</label>
<div class="formControls col-xs-8 col-sm-9">
<input type="text" class="input-text" placeholder="" id="proLeader" name="proLeader" >
</div>
</div> <div class="row cl">
<label class="form-label col-xs-4 col-sm-2"><span class="c-red">*</span>开工时间:</label>
<div class="formControls col-xs-8 col-sm-9">
<input type="text" onfocus="WdatePicker({ dateFmt:'yyyy-MM-dd HH:mm:ss',maxDate:'#F{$dp.$D(\'commentdatemax\')||\'%y-%M-%d\'}' })" id="commentdatemin" name="startTime" class="input-text Wdate">
</div>
</div>
<div class="row cl">
<label class="form-label col-xs-4 col-sm-2"><span class="c-red">*</span>计划完工时间:</label>
<div class="formControls col-xs-8 col-sm-9">
<input type="text" onfocus="WdatePicker({ dateFmt:'yyyy-MM-dd HH:mm:ss',minDate:'#F{$dp.$D(\'commentdatemin\')}' })" id="commentdatemax" name="endTime" class="input-text Wdate">
</div>
</div> <div class="row cl">
<label class="form-label col-xs-4 col-sm-2"><span class="c-red">*</span>项目地址:</label>
<div class="formControls col-xs-8 col-sm-9">
<input type="text" class="input-text" placeholder="" id="proLevel" name="proLevel" >
</div>
</div>
<div class="row cl">
<label class="form-label col-xs-4 col-sm-2"><span class="c-red">*</span>合同金额:</label>
<div class="formControls col-xs-8 col-sm-9">
<input type="text" class="input-text" placeholder="0" id="totalMoney" name="totalMoney" >
</div>
</div>
<div class="row cl">
<label class="form-label col-xs-4 col-sm-2"><span class="c-red">*</span>建设单位:</label>
<div class="formControls col-xs-8 col-sm-9">
<input type="text" class="input-text" placeholder="" id="proSource" name="proSource" >
</div>
</div>
<div class="row cl">
<label class="form-label col-xs-4 col-sm-2">项目摘要:</label>
<div class="formControls col-xs-8 col-sm-9">
<input type ="text" class="input-text" name="remark" />
</div>
</div>
<div class="row cl">
<label class="form-label col-xs-4 col-sm-2">项目备注:</label>
<div class="formControls col-xs-8 col-sm-9">
<input type="text" class="input-text" placeholder="" id="memo" name="memo" >
</div>
</div> <div class="row cl">
<div class="col-xs-8 col-sm-9 col-xs-offset-4 col-sm-offset-2">
<button id = "adult" class="btn btn-primary radius" type="submit"><i class="Hui-iconfont"></i> 保存并提交审核</button> <button id = "save" class="btn btn-primary radius" type="submit"><i class="Hui-iconfont"></i> 保存草稿</button> <button id = "reset" class="btn btn-default radius" type="reset"> 取消 </button>
</div>
</div>
</form>
Jquery部分代码:
$(function(){
$('.skin-minimal input').iCheck({
checkboxClass: 'icheckbox-blue',
radioClass: 'iradio-blue',
increaseArea: '20%'
});
//表单验证
var validator = $("#form-article-add").validate({
rules:{
contractNumber:{
required:true,
},
enterMoney:{
required:true,
number:true
},
commentdatemin:{
required:true,
dateISO:true
},
},
onkeyup:false,
focusCleanup:true,
success:"valid",
submitHandler:function(form) {
$(form).find(":submit").attr("disabled", true).attr("value", "保存中...");
//$(form).ajaxSubmit();
$(form).ajaxSubmit({
type: 'post',
url: "projectManagerVo/handle",
success: function(data){
//获取父层
var index = parent.layer.getFrameIndex(window.name);
//刷新父层
parent.location.reload();
//关闭弹出层
parent.layer.close(index);
layer.msg('添加成功!',{icon: 6,time:2000});
parent.location.href="projectManagerVo/show";
},
error: function(XmlHttpRequest, textStatus, errorThrown){
layer.msg('ERROR!',{icon:5,time:2000});
}
});
}
});
});
2、非表单提交验证
var index = parent.layer.getFrameIndex(window.name); //获取窗口索引
parent.layer.close(index);//关闭弹出的子页面窗口
HTML代码:
<div class="page-container">
<div class="row cl">
<label class="form-label col-xs-4 col-sm-2"><span
class="c-red">*</span>项目名称:</label>
<div class="formControls col-xs-8 col-sm-9">
<input type="text" class="input-text" value="${proName }"
placeholder="" id="" name="proName" readonly="readonly">
</div>
</div>
<div class="row cl">
<label class="form-label col-xs-4 col-sm-2"><span
class="c-red">*</span>合同名称:</label>
<div class="formControls col-xs-8 col-sm-9">
<input type="text" class="input-text" value=""
placeholder="" id="contractName" name="contractName" >
</div>
</div>
<div class="row cl">
<label class="form-label col-xs-4 col-sm-2"><span
class="c-red">*</span>合同编号:</label>
<div class="formControls col-xs-8 col-sm-9">
<input type="text" class="input-text" value=""
placeholder="" id="contractNumber" name="contractNumber" >
</div>
</div>
<div class="row cl">
<label class="form-label col-xs-4 col-sm-2"><span
class="c-red">*</span>项目发票上传:</label>
<div class="formControls col-xs-8 col-sm-9">
<div class="uploader-list-container">
<div class="queueList">
<div id="dndArea" class="placeholder">
<div id="filePicker-2"></div>
<p>或将照片拖到这里,单次最多可选300张</p>
</div>
</div>
<div class="statusBar" style="display:none;">
<div class="progress">
<span class="text">0%</span> <span class="percentage"></span>
</div>
<div class="info"></div>
<div class="btns">
<div id="filePicker2"></div>
<div class="uploadBtn">开始上传</div>
</div>
</div>
</div>
</div>
</div>
<div class="row cl">
<div class="col-xs-8 col-sm-9 col-xs-offset-4 col-sm-offset-2">
<button
onClick="article_add('','contractVo/save?&projectId=${projectId}&contractScan=','10001');"
class="btn btn-primary radius" type="button">
<i class="Hui-iconfont"></i> 保存
</button>
</div>
</div>
</div>
JS代码;
/*项目合同-添加*/
function article_add(title, url, w, h) {
if(imagePath && $("#contractNumber").val() && $("#contractName").val()){
var index = layer.open({
type : 2,
title : title,
content : url+imagePath+'&contractNumber=' + $("#contractNumber").val()+'&contractName='+ $("#contractName").val(),
});
layer.full(index);
var index = parent.layer.getFrameIndex(window.name); //获取窗口索引
parent.layer.close(index);//关闭弹出的子页面窗口
}else{layer.msg('内容不能为空,图片要上传!!',{icon: 5,time:2000});} }
layer,Jquery,validate实现表单验证,刷新页面,关闭子页面的更多相关文章
- Jquery.validate.js表单验证插件的使用
作为一个网站web开发人员,以前居然不知道还有表单验证这样好呀的插件,还在一行行写表单验证,真是后悔没能早点知道他们的存在. 最近公司不忙,自己学习一些东西的时候,发现了validation的一个实例 ...
- 基于Jquery Validate 的表单验证
基于Jquery Validate 的表单验证 jquery.validate.js是jquery下的一个验证插件,运用此插件我们可以很便捷的对表单元素进行格式验证. 在讲述基于Jquery Vali ...
- 异步提交form的时候利用jQuery validate实现表单验证
异步提交form的时候利用jQuery validate实现表单验证相信很多人都用过jquery validate插件,非常好用,并且可以通过下面的语句来自定义验证规则 // 电话号码验证 ...
- 基于Bootstrap+jQuery.validate Form表单验证实践
基于Bootstrap jQuery.validate Form表单验证实践 项目结构 : github 上源码地址:https://github.com/starzou/front-end- ...
- jQuery.validate.js表单验证插件
jQuery.validate.js表单验证插件的使用 效果: 代码: <!DOCTYPE html> <html lang="en"> <head& ...
- jquery.validate.js表单验证
一.用前必备官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-validation/ API: http://jquery.bassist ...
- 【转】jquery.validate.js表单验证
一.用前必备官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-validation/ API: http://jquery.bassist ...
- [转]jquery.validate.js表单验证
原文地址:https://www.cnblogs.com/si-shaohua/p/3780321.html 一.用前必备官方网站:http://bassistance.de/jquery-plugi ...
- jquery.validate.js 表单验证简单用法
引入jquery.validate.js插件以及Jquery,在最后加上这个插件的方法名来引用.$('form').validate(); <!DOCTYPE html PUBLIC " ...
随机推荐
- JVM菜鸟进阶高手之路十三(等你来战!!!)
转载请注明原创出处,谢谢! 前几天有个朋友问了我个问题,下面给大家分享下,希望大家积极在评论区进行评论留言,等你来战!!! 先来个趣味题,热身下,引出后面的jvm题目. 地上的影子是那个人的? 地上的 ...
- iOS下OpenCV开发用OC还是Swift
本文为作者原创,转载请注明出处(http://www.cnblogs.com/mar-q/)by 负赑屃 其实标题中这个问题并不准确,准确的说法应该是iOS下的OpenCV开发是使用OC还是Swift ...
- .1-Vue源码起步
搞事!搞事! 截止2017.5.16,终于把vue的源码全部抄完,总共有9624行,花时大概一个月时间,中间迭代了一个版本(2.2-2.3),部分代码可能不一致,不过没关系! 上一个链接https:/ ...
- 在你的网站实现qq登陆(php)
这个qq的oauth2.1有个坑,坑了我半天,后来查了不少资料总算弄通了,现在把详细步骤记录下来. 步骤一.登陆http://connect.qq.com/ 步骤二.创建应用.我创建的是wen ...
- Problem B
Problem Description A subsequence of a given sequence is the given sequence with some elements (poss ...
- HDU 3584 Cube(三位树状数组)
Cube Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/65536 K (Java/Others)Total Submi ...
- python 进程池(multiprocessing.Pool)和线程池(threadpool.ThreadPool)的区别与实例
一般我们是通过动态创建子进程(或子线程)来实现并发服务器的,但是会存在这样一些缺点: 1.动态创建进程(或线程)比较耗费时间,这将导致较慢的服务器响应. 2.动态创建的子进程通常只用来为一个客户服务 ...
- ASP.NET Core的身份认证框架IdentityServer4(5)- 包和构建
包和构建 IdentityServer有许多nuget包 IdentityServer4 nuget | github 包含IdentityServer核心对象模型,服务和中间件. 仅支持内存配置和用 ...
- CSS3详解:transform、transition
CSS3 transform是什么? transform的含义是:改变,使-变形:转换 CSS3 transform都有哪些常用属性? transform的属性包括:rotate() / skew() ...
- 深入分析Android动画(一)
动画的分类: ①View动画 View动画顾名思义其作用对象为View,包含平移.缩放.旋转.透明,这四类变化分别对应着Animation的子类TranlateAnimation.ScaleAnima ...