jeecg bootstrap修改单列模版
在作者原来的模版上增强单列模版
<%@ page language="java" import="java.util.*" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@include file="/context/mytags.jsp"%>
<!DOCTYPE html>
<#assign callbackFlag = false />
<#assign fileName = "" />
<#list pageColumns as callBackTestPo>
<#if callBackTestPo.showType=='file'>
<#assign callbackFlag = true />
</#if>
</#list>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>${ftl_description}</title>
<hp:base type="hplusCss"></hp:base>
<style type="text/css">
.wrapper {
float: none;
}
</style>
</head> <body class="gray-bg">
<div class="wrapper wrapper-content animated fadeIn">
<hp:formvalid formid="formobj" styleClass="form-horizontal" dialog="true" usePlugin="password" layout="table"
action="${entityName?uncap_first}Controller.do?doAdd"
tiptype="1" ${callbackFlag?string("callback=\"jeecgFormFileCallBack@Override\"", "")}>
<input type="hidden" id="btn_sub" class="btn_sub"/>
<input type="hidden" id="id" name="id"/>
<div class="tab-wrapper">
<!-- tab -->
<ul class="nav nav-tabs">
<li role="presentation" class="active"><a href="javascript:void(0);">${ftl_description}</a></li>
</ul>
<!-- tab内容 --> <div class="form-group">
<#list pageColumns as po>
<#if (pageColumns?size>10)>
<#if po_index%2==0>
<div class="form-group">
</#if>
<#else>
<div class="form-group">
</#if>
<label class="col-sm-2 control-label">${po.content}:</label>
<div class="col-sm-10"> <#if po.showType=='text'>
<input id="${po.fieldName}" name="${po.fieldName}" type="text"
class="form-control" <#if po.fieldValidType?if_exists?html != ''>
datatype="${po.fieldValidType?if_exists?html}"<#else><#if po.type == 'int'>
datatype="n"<#elseif po.type=='double'>
datatype="/^(-?\d+)(\.\d+)?$/"<#else><#if po.isNull != 'Y'>datatype="*"</#if></#if></#if>>
<#elseif po.showType=='popup'>
<input id="${po.fieldName}" name="${po.fieldName}" type="text"
class="form-control" <#if po.fieldValidType?if_exists?html != ''>
datatype="${po.fieldValidType?if_exists?html}"<#else><#if po.type == 'int'>
datatype="n"<#elseif po.type=='double'>
datatype="/^(-?\d+)(\.\d+)?$/"<#else><#if po.isNull != 'Y'>datatype="*"</#if></#if></#if><#if po.dictTable?if_exists?html!="">
onclick="inputClick(this,'${po.dictField}','${po.dictTable}')"</#if>>
<#elseif po.showType=='textarea'>
<textarea id="${po.fieldName}" class="form-control" rows="6"
name="${po.fieldName}"></textarea>
<#elseif po.showType=='password'>
<input id="${po.fieldName}" name="${po.fieldName}" type="password"
class="form-control" <#if po.fieldValidType?if_exists?html != ''>
datatype="${po.fieldValidType?if_exists?html}"<#else><#if po.type == 'int'>
datatype="n"<#elseif po.type=='double'>
datatype="/^(-?\d+)(\.\d+)?$/"<#else><#if po.isNull != 'Y'>datatype="*"</#if></#if></#if>>
<#elseif po.showType=='radio' || po.showType=='select' || po.showType=='checkbox' || po.showType=='list'>
<t:dictSelect field="${po.fieldName}" type="${po.showType?if_exists?html}"
extendJson="{class:'form-control'}"
<#if po.dictTable?if_exists?html != ''>dictTable="${po.dictTable?if_exists?html}"
dictField="${po.dictField?if_exists?html}"
dictText="${po.dictText?if_exists?html}"
<#else>typeGroupCode="${po.dictField}"</#if> hasLabel="false"
title="${po.content}"></t:dictSelect>
<#elseif po.showType=='date'>
<input id="${po.fieldName}" name="${po.fieldName}" type="text" style="width: 150px"
class="form-control"
onClick="WdatePicker()"<#if po.fieldValidType?if_exists?html != ''>
datatype="${po.fieldValidType?if_exists?html}"<#else><#if po.isNull != 'Y'>datatype="*"</#if></#if>
type="date" pattern="yyyy-MM-dd"/>
<#elseif po.showType=='datetime'>
<input id="${po.fieldName}" name="${po.fieldName}" type="text" style="width: 150px"
class="form-control"
onClick="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss'})"<#if po.fieldValidType?if_exists?html != ''>
datatype="${po.fieldValidType?if_exists?html}"<#else><#if po.isNull != 'Y'>datatype="*"</#if></#if>
type="date" pattern="yyyy-MM-dd hh:mm:ss"/>
<#elseif po.showType=='file'>
<#assign fileName = "${po.fieldName}" />
<table></table>
<div class="form jeecgDetail">
<script type="text/javascript">
var serverMsg = "";
$(function () {
$('#${po.fieldName}').uploadify({
buttonText: '添加文件',
auto: false,
progressData: 'speed',
multi: true,
height: 25,
overrideEvents: ['onDialogClose'],
fileTypeDesc: '文件格式:',
queueID: 'filediv_file',
fileTypeExts: '*.rar;*.zip;*.doc;*.docx;*.txt;*.ppt;*.xls;*.xlsx;*.html;*.htm;*.pdf;*.jpg;*.gif;*.png',
fileSizeLimit: '15MB',
swf: 'plug-in/uploadify/uploadify.swf',
uploader: 'cgUploadController.do?saveFiles&jsessionid=' + $("#sessionUID").val() + '',
onUploadStart: function (file) {
var cgFormId = $("input[name='id']").val();
$('#${po.fieldName}').uploadify("settings", "formData", {
'cgFormId': cgFormId,
'cgFormName': '${tableName}',
'cgFormField': '${fieldMeta[po.fieldName]}'
});
},
onQueueComplete: function (queueData) {
var win = frameElement.api.opener;
win.reloadTable();
win.tip(serverMsg);
frameElement.api.close();
},
onUploadSuccess: function (file, data, response) {
var d = $.parseJSON(data);
if (d.success) {
var win = frameElement.api.opener;
serverMsg = d.msg;
}
},
onFallback: function () {
tip("您未安装FLASH控件,无法上传图片!请安装FLASH控件后再试")
},
onSelectError: function (file, errorCode, errorMsg) {
switch (errorCode) {
case -100 :
tip("上传的文件数量已经超出系统限制的" + $('#file').uploadify('settings', 'queueSizeLimit') + "个文件!");
break;
case -110 :
tip("文件 [" + file.name + "] 大小超出系统限制的" + $('#file').uploadify('settings', 'fileSizeLimit') + "大小!");
break;
case -120 :
tip("文件 [" + file.name + "] 大小异常!");
break;
case -130 :
tip("文件 [" + file.name + "] 类型不正确!");
break;
}
},
onUploadProgress: function (file, bytesUploaded, bytesTotal, totalBytesUploaded, totalBytesTotal) {
}
});
});
</script>
<span id="file_uploadspan"><input type="file" name="${po.fieldName}"
id="${po.fieldName}"/></span>
</div>
<div class="form" id="filediv_file"></div>
<#--update-start--Author: jg_huangxg Date:20160421 for:TASK #1027 【online】代码生成器模板不支持UE编辑器 -->
<#elseif po.showType='umeditor'>
<script type="text/javascript" charset="utf-8"
src="plug-in/ueditor/ueditor.config.js"></script>
<script type="text/javascript" charset="utf-8"
src="plug-in/ueditor/ueditor.all.min.js"></script>
<textarea name="${po.fieldName}" id="${po.fieldName}"
style="width: 650px;height:300px"></textarea>
<script type="text/javascript">
var editor = UE.getEditor('${po.fieldName}');
</script>
<#--update-end--Author: jg_huangxg Date:20160421 for:TASK #1027 【online】代码生成器模板不支持UE编辑器 -->
<#else>
<input id="${po.fieldName}" name="${po.fieldName}" type="text" style="width: 150px"
class="form-control" <#if po.fieldValidType?if_exists?html != ''>
datatype="${po.fieldValidType?if_exists?html}"<#else><#if po.type == 'int'>
datatype="n"<#elseif po.type=='double'>
datatype="/^(-?\d+)(\.\d+)?$/"<#else><#if po.isNull != 'Y'>datatype="*"</#if></#if></#if>>
</#if>
<span class="Validform_checktip" style="float:left;height:0px;"></span>
<label class="Validform_label" style="display: none">${po.content?if_exists?html}</label>
</div>
<#if (pageColumns?size>10)>
<#if (po_index%2==0)&&(!po_has_next)>
<div class="col-xs-2 text-center"><b></b></div>
<div class="col-xs-4"></div>
</#if>
<#if (po_index%2!=0)||(!po_has_next)>
</div>
</#if>
<#else>
</div>
</#if> </#list> <div class="row" id="sub_tr" style="display: none;">
<div class="col-xs-12 layout-header">
<div class="col-xs-6"></div>
<div class="col-xs-6">
<button type="button" onclick="neibuClick();" class="btn btn-default">提交</button>
</div>
</div>
</div>
</div>
</div> <div class="con-wrapper" id="con-wrapper2" style="display: block;"></div>
</div>
</hp:formvalid>
<#if callbackFlag == true>
<script type="text/javascript">
function jeecgFormFileCallBack(data) {
if (data.success == true) {
uploadFile(data);
} else {
if (data.responseText == '' || data.responseText == undefined) {
$.messager.alert('错误', data.msg);
$.Hidemsg();
} else {
try {
var emsg = data.responseText.substring(data.responseText.indexOf('错误描述'), data.responseText.indexOf('错误信息'));
$.messager.alert('错误', emsg);
$.Hidemsg();
} catch (ex) {
$.messager.alert('错误', data.responseText + '');
}
}
return false;
}
if (!neibuClickFlag) {
var win = frameElement.api.opener;
win.reloadTable();
}
}
function upload() {
$('#${fileName}').uploadify('upload', '*');
} var neibuClickFlag = false;
function neibuClick() {
neibuClickFlag = true;
$('#btn_sub').trigger('click');
}
function cancel() {
$('#${fileName}').uploadify('cancel', '*');
}
function uploadFile(data) {
if (!$("input[name='id']").val()) {
if (data.obj != null && data.obj != 'undefined') {
$("input[name='id']").val(data.obj.id);
}
}
if ($(".uploadify-queue-item").length > 0) {
upload();
} else {
if (neibuClickFlag) {
alert(data.msg);
neibuClickFlag = false;
} else {
var win = frameElement.api.opener;
win.reloadTable();
win.tip(data.msg);
frameElement.api.close();
}
}
}
</script>
</#if> <script type="text/javascript">
$(function () {
//查看模式情况下,删除和上传附件功能禁止使用
if (location.href.indexOf("load=detail") != -1) {
$(".jeecgDetail").hide();
} if (location.href.indexOf("mode=read") != -1) {
//查看模式控件禁用
$("#formobj").find(":input").attr("disabled", "disabled");
}
if (location.href.indexOf("mode=onbutton") != -1) {
//其他模式显示提交按钮
$("#sub_tr").show();
}
}); var neibuClickFlag = false;
function neibuClick() {
neibuClickFlag = true;
$('#btn_sub').trigger('click');
} </script>
</body>
<script src="webpage/${bussiPackage?replace('.','/')}/${entityPackage}/${entityName?uncap_first}.js"></script>
</html>
jeecg bootstrap修改单列模版的更多相关文章
- 修改netbeans模版头部的说明
以新建一个php类文件为例: 有两个地方需要修改, 1,工具->模版->默认许可证->在编辑器中打开 2,工具->模版->选择php类->在编辑器中打开 即可进行修 ...
- bootstrap的html模版
<!DOCTYPE html> <html> <head> <title>Bootstrap 模板</title> <meta nam ...
- MyEclipse10修改servlet模版
Myeclipse10中servlet模版存放的位置与早些的版本不同,它存放在: MyEclipse\Common\plugins中的下面那个jar包中 com.genuitec.eclipse.wi ...
- MyEclipse修改servlet模版
找到myeclipse安装目录中的 然后把这个jar包复制到桌面 以压缩包的方式打开 之后保存, 然后把修改的这个jar包放到刚开的路径,替换已经存在的! 完成!
- JEECG中修改时间相关自定义定时器
JEECG中使用,如下: @InitBinder public void initBinder(ServletRequestDataBinder binder) { binder.registerCu ...
- bootstrap修改数据刷新页面跳转到当前页的问题
修改按钮的页面的方法里添加如下代码 1 var pn = $("#datatable").bootstrapTable('getOptions').pageNumber; ...
- Bootstrap修改input file默认样式
html部分 <div class="form-group"> <label class="col-sm-3 control-label"&g ...
- bootstrap修改勾选样式
小对勾需要引入awesome插件. css部分: .bella-checkbox{ position: relative;}/** 将初始的checkbox的样式改变 */.bella-checkbo ...
- 读取pandas修改单列数据类型
import pandas as pd import numpy as np df = pd.read_csv('000917.csv',encoding='gbk') df = df[df['涨跌幅 ...
随机推荐
- [网站性能1]对.net系统架构改造的一点经验和教训
文章来源:http://www.admin10000.com/document/2111.html 在互联网行业,基于Unix/Linux的网站系统架构毫无疑问是当今主流的架构解决方案,这不仅仅是因为 ...
- Laravel增删改查语句总结
<?php Class Que { /* * 查询: */ public function index() { $users = User::query()->paginate(20); ...
- [CI] 使用Jenkins自动编译部署web应用
写在前面 初步接触持续集成自动化过程,本篇主要介绍基于Jenkins实现持续集成的方式,通过案例介绍线上自动编译及部署的配置过程 持续集成 持续集成是一种软件开发实践,即团队开发成员经常集成它们的工作 ...
- P2特征(一)
很多人在提到项目的特征,肯定能说出来很多的内容,但是在英国体系下,项目的特点有哪些呢?这些特点引深的内容又有什么深度的含义. 项目具有临时性:很多人都知道项目是临时的,结束了就团队成员 ...
- 让PDF.NET支持最新的SQLite数据库
最近项目中用到了SQLite,之前项目中用的是PDF.NET+MySQL的组合,已经写了不少代码,如果能把写好的代码直接用在SQLite上就好了,PDF.NET支持大部分主流的数据库,这个当然可以,只 ...
- c#上级目录
本文实例讲述了C#的path.GetFullPath 获取上级目录实现方法,分享给大家供大家参考.具体实现方法如下: string path = new directoryinfo("../ ...
- sublime text3 使用SVN插件
Simon在项目中经常使用SVN,每次都要切换提交,很麻烦,有了这个SVN插件就很方便了,使用快捷方式提交,更新. 安装: Ctrl + Shift + P 调用出Sublime Text的包管理工具 ...
- json数组去重
//名字去重 Map<String,Integer> map=new HashMap<String,Integer>(); for(int i=0;i<jows.size ...
- JKS和PKCS#12
今天来点实际工作中的硬通货! 与计费系统打交道,少不了用到加密/解密实现.为了安全起见,通过非对称加密交换对称加密密钥更是不可或缺.那么需要通过什么载体传递非对称算法公钥/私钥信息?数字证书是公钥的载 ...
- 博文Contents<1--到200—>
====================-------------- 前言:博客中的随笔文章.并非都是笔者的原创文章.有些是听别人说的.有些是书上摘录的.有些是百度的.有些是别人博客的文章.有些是自己 ...