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 " ...
随机推荐
- Windows下安装RabbitMQ
今天正好给自己机器安装rabbitmq,总结下安装经验. 现在国内访问erlang,和 RabbitMQ 官网好像都很难连上.我已下载好了资源,需要的朋友可以下载. 链接: https://pan.b ...
- 从狗日的Oracle上下载jdk
就算因为需要我要用到java,我依然要说java是最垃圾的语言,现在oracle又让我明白什么叫最垃圾的公司. 从oracle下载文件要求你同意他的协议,但是你会发现很多时候就算你点了同意依然不可以下 ...
- python 模块的概念介绍
模块 模块:本质就是一个.py文件分为三部分:内置模块.第三方模块,自定义模块 模块: 顶层文件 python模块python模块可以将代码量较大的程序分割成多个有组织的.彼此独立但又能互相交互的代码 ...
- datagrid参数queryParams--easyUI
datagrid参数queryParams--easyUI Html <div region="center" border="false&qu ...
- Zernike不变矩
1.Zernike矩介绍 Zernike矩是基于 Zernike多项式的正交化函数,所利用的正交多项式集是 1个在单位圆内的完备正交集.Zernike矩是复数矩 ,一般把 Zernike矩的模作为特征 ...
- [板子]Floyd&Dijkstra
谨以此笔记记录jjw高三党四个月学习NOI的历程..如转载请标记出处 Floyd算法: 默认是业界最短路最简单的写法,并且只有五行.时间复杂度为O(N3),空间复杂度为O(N2). ;k<=n; ...
- C++中引用的底层实现
为了研究一下C++中引用的底层实现,写了一个小代码验证其中的基本原理. 引用是一个变量的别名,到底会不会为引用申请内存空间?如果申请空间,空间存放的是什么,下面的代码就主要解决这个疑问. 代码如下,详 ...
- HDU1019 Least Common Multiple(多个数的最小公倍数)
The least common multiple (LCM) of a set of positive integers is the smallest positive integer which ...
- 从ELK到EFK演进
背景 作为中国最大的在线教育站点,目前沪江日志服务的用户包含网校,交易,金融,CCTalk 等多个部门的多个产品的日志搜索分析业务,每日产生的各类日志有好十几种,每天处理约10亿条(1TB)日志,热数 ...
- mysql 读写分离
常见的读写分离方案:1)Amoeba读写分离2)MySQL-Proxy读写分离3)基于程序读写分离(效率很高,实施难度大,开发改代码) 2)原理 web 访问数据库,通过proxy4040端口作为转发 ...