第一版
This commit is contained in:
22
WebContent/static/easyui/js/echarts.common.min.js
vendored
Normal file
22
WebContent/static/easyui/js/echarts.common.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
175
WebContent/static/easyui/js/outlook2.js
Normal file
175
WebContent/static/easyui/js/outlook2.js
Normal file
@@ -0,0 +1,175 @@
|
||||
|
||||
$(function(){
|
||||
InitLeftMenu();
|
||||
tabClose();
|
||||
tabCloseEven();
|
||||
|
||||
|
||||
})
|
||||
|
||||
//初始化左侧
|
||||
function InitLeftMenu() {
|
||||
$("#nav").accordion({animate:false});
|
||||
|
||||
$.each(_menus.menus, function(i, n) {
|
||||
var menulist ='';
|
||||
menulist +='<ul>';
|
||||
$.each(n.menus, function(j, o) {
|
||||
menulist += '<li><div><a ref="'+o.menuid+'" href="#" rel="' + o.url + '" ><span class="icon '+o.icon+'" > </span><span class="nav">' + o.menuname + '</span></a></div></li> ';
|
||||
})
|
||||
menulist += '</ul>';
|
||||
|
||||
$('#nav').accordion('add', {
|
||||
title: n.menuname,
|
||||
content: menulist,
|
||||
iconCls: 'icon ' + n.icon
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
$('.easyui-accordion li a').click(function(){
|
||||
var tabTitle = $(this).children('.nav').text();
|
||||
|
||||
var url = $(this).attr("rel");
|
||||
var menuid = $(this).attr("ref");
|
||||
var icon = getIcon(menuid,icon);
|
||||
|
||||
addTab(tabTitle,url,icon);
|
||||
$('.easyui-accordion li div').removeClass("selected");
|
||||
$(this).parent().addClass("selected");
|
||||
}).hover(function(){
|
||||
$(this).parent().addClass("hover");
|
||||
},function(){
|
||||
$(this).parent().removeClass("hover");
|
||||
});
|
||||
|
||||
//选中第一个
|
||||
var panels = $('#nav').accordion('panels');
|
||||
var t = panels[0].panel('options').title;
|
||||
$('#nav').accordion('select', t);
|
||||
}
|
||||
//获取左侧导航的图标
|
||||
function getIcon(menuid){
|
||||
var icon = 'icon ';
|
||||
$.each(_menus.menus, function(i, n) {
|
||||
$.each(n.menus, function(j, o) {
|
||||
if(o.menuid==menuid){
|
||||
icon += o.icon;
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
return icon;
|
||||
}
|
||||
|
||||
function addTab(subtitle,url,icon){
|
||||
if(!$('#tabs').tabs('exists',subtitle)){
|
||||
$('#tabs').tabs('add',{
|
||||
title:subtitle,
|
||||
content:createFrame(url),
|
||||
closable:true,
|
||||
icon:icon
|
||||
});
|
||||
}else{
|
||||
$('#tabs').tabs('select',subtitle);
|
||||
$('#mm-tabupdate').click();
|
||||
}
|
||||
tabClose();
|
||||
}
|
||||
|
||||
function createFrame(url)
|
||||
{
|
||||
var s = '<iframe scrolling="auto" frameborder="0" src="'+url+'" style="width:100%;height:100%;"></iframe>';
|
||||
return s;
|
||||
}
|
||||
|
||||
function tabClose()
|
||||
{
|
||||
/*双击关闭TAB选项卡*/
|
||||
$(".tabs-inner").dblclick(function(){
|
||||
var subtitle = $(this).children(".tabs-closable").text();
|
||||
$('#tabs').tabs('close',subtitle);
|
||||
})
|
||||
/*为选项卡绑定右键*/
|
||||
$(".tabs-inner").bind('contextmenu',function(e){
|
||||
$('#mm').menu('show', {
|
||||
left: e.pageX,
|
||||
top: e.pageY
|
||||
});
|
||||
|
||||
var subtitle =$(this).children(".tabs-closable").text();
|
||||
|
||||
$('#mm').data("currtab",subtitle);
|
||||
$('#tabs').tabs('select',subtitle);
|
||||
return false;
|
||||
});
|
||||
}
|
||||
//绑定右键菜单事件
|
||||
function tabCloseEven()
|
||||
{
|
||||
//刷新
|
||||
$('#mm-tabupdate').click(function(){
|
||||
var currTab = $('#tabs').tabs('getSelected');
|
||||
var url = $(currTab.panel('options').content).attr('src');
|
||||
$('#tabs').tabs('update',{
|
||||
tab:currTab,
|
||||
options:{
|
||||
content:createFrame(url)
|
||||
}
|
||||
})
|
||||
})
|
||||
//关闭当前
|
||||
$('#mm-tabclose').click(function(){
|
||||
var currtab_title = $('#mm').data("currtab");
|
||||
$('#tabs').tabs('close',currtab_title);
|
||||
})
|
||||
//全部关闭
|
||||
$('#mm-tabcloseall').click(function(){
|
||||
$('.tabs-inner span').each(function(i,n){
|
||||
var t = $(n).text();
|
||||
$('#tabs').tabs('close',t);
|
||||
});
|
||||
});
|
||||
//关闭除当前之外的TAB
|
||||
$('#mm-tabcloseother').click(function(){
|
||||
$('#mm-tabcloseright').click();
|
||||
$('#mm-tabcloseleft').click();
|
||||
});
|
||||
//关闭当前右侧的TAB
|
||||
$('#mm-tabcloseright').click(function(){
|
||||
var nextall = $('.tabs-selected').nextAll();
|
||||
if(nextall.length==0){
|
||||
//msgShow('系统提示','后边没有啦~~','error');
|
||||
alert('后边没有啦~~');
|
||||
return false;
|
||||
}
|
||||
nextall.each(function(i,n){
|
||||
var t=$('a:eq(0) span',$(n)).text();
|
||||
$('#tabs').tabs('close',t);
|
||||
});
|
||||
return false;
|
||||
});
|
||||
//关闭当前左侧的TAB
|
||||
$('#mm-tabcloseleft').click(function(){
|
||||
var prevall = $('.tabs-selected').prevAll();
|
||||
if(prevall.length==0){
|
||||
alert('到头了,前边没有啦~~');
|
||||
return false;
|
||||
}
|
||||
prevall.each(function(i,n){
|
||||
var t=$('a:eq(0) span',$(n)).text();
|
||||
$('#tabs').tabs('close',t);
|
||||
});
|
||||
return false;
|
||||
});
|
||||
|
||||
//退出
|
||||
$("#mm-exit").click(function(){
|
||||
$('#mm').menu('hide');
|
||||
})
|
||||
}
|
||||
|
||||
//弹出信息窗口 title:标题 msgString:提示信息 msgType:信息类型 [error,info,question,warning]
|
||||
function msgShow(title, msgString, msgType) {
|
||||
$.messager.alert(title, msgString, msgType);
|
||||
}
|
||||
180
WebContent/static/easyui/js/validateExtends.js
Normal file
180
WebContent/static/easyui/js/validateExtends.js
Normal file
@@ -0,0 +1,180 @@
|
||||
/**
|
||||
* 扩展easyui表单的验证
|
||||
*/
|
||||
|
||||
$.extend($.fn.validatebox.defaults.rules, {
|
||||
//验证汉字
|
||||
CHS: {
|
||||
validator: function (value) {
|
||||
return /^[\u0391-\uFFE5]+$/.test(value);
|
||||
},
|
||||
message: '只能输入汉字'
|
||||
},
|
||||
//移动手机号码验证
|
||||
mobile: {//value值为文本框中的值
|
||||
validator: function (value) {
|
||||
var reg = /^1[3|4|5|8|9]\d{9}$/;
|
||||
return reg.test(value);
|
||||
},
|
||||
message: '13/14/15/18/19开头,且11位的手机号'
|
||||
},
|
||||
//只能为数字
|
||||
number: {//value值为文本框中的值
|
||||
validator: function (value) {
|
||||
var reg = /^[0-9]*$/;
|
||||
return reg.test(value);
|
||||
},
|
||||
message: '只能为数字格式'
|
||||
},
|
||||
//验证账号不能重复
|
||||
repeat: {
|
||||
validator: function (value) {
|
||||
var flag = true;
|
||||
$.ajax({
|
||||
type: "post",
|
||||
async: false,
|
||||
url: "SystemServlet?method=AllAccount&t="+new Date().getTime(),
|
||||
success: function(data){//在验证函数里加载数据,加载过来后判断输入的值
|
||||
var account = $.parseJSON(data);
|
||||
for(var i=0;i < account.length;i++){
|
||||
if(value == account[i]){
|
||||
flag = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
return flag;
|
||||
},
|
||||
message: '用户已存在'
|
||||
},
|
||||
|
||||
//验证课程不能重复
|
||||
repeat_course: {
|
||||
validator: function (value) {
|
||||
var flag = true;
|
||||
$.ajax({
|
||||
type: "post",
|
||||
async: false,
|
||||
url: "CourseServlet?method=CourseList&t="+new Date().getTime(),
|
||||
success: function(data){//在验证函数里加载数据,加载过来后判断输入的值
|
||||
var course = $.parseJSON(data);
|
||||
for(var i=0;i < course.length;i++){
|
||||
if(value == course[i].name){
|
||||
flag = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
return flag;
|
||||
},
|
||||
message: '课程名称已存在'
|
||||
},
|
||||
|
||||
//验证年级不能重复
|
||||
repeat_grade: {
|
||||
validator: function (value) {
|
||||
var flag = true;
|
||||
$.ajax({
|
||||
type: "post",
|
||||
async: false,
|
||||
url: "GradeServlet?method=GradeList&t="+new Date().getTime(),
|
||||
success: function(data){//在验证函数里加载数据,加载过来后判断输入的值
|
||||
var grade = $.parseJSON(data);
|
||||
for(var i=0;i < grade.length;i++){
|
||||
if(value == grade[i].name){
|
||||
flag = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
return flag;
|
||||
},
|
||||
message: '年级名称已存在'
|
||||
},
|
||||
|
||||
//验证班级不能重复
|
||||
repeat_clazz: {
|
||||
validator: function (value, param) {
|
||||
var gradeid = $(param[0]).combobox("getValue");
|
||||
var flag = true;
|
||||
$.ajax({
|
||||
type: "post",
|
||||
async: false,
|
||||
data: {gradeid: gradeid},
|
||||
url: "ClazzServlet?method=ClazzList&t="+new Date().getTime(),
|
||||
success: function(data){//在验证函数里加载数据,加载过来后判断输入的值
|
||||
var clazz = $.parseJSON(data);
|
||||
for(var i=0;i < clazz.length;i++){
|
||||
if(value == clazz[i].name){
|
||||
flag = false;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
return flag;
|
||||
},
|
||||
message: '该年级下已存在同名班级'
|
||||
},
|
||||
|
||||
//验证两个值是否相同
|
||||
equals: {//param的值为[]中值
|
||||
validator: function (value, param) {
|
||||
if($(param[0]).val() != value){
|
||||
return false;
|
||||
} else{
|
||||
return true;
|
||||
}
|
||||
|
||||
}, message: '两次密码不同.'
|
||||
},
|
||||
|
||||
//密码规则
|
||||
password: {
|
||||
validator: function (value) {
|
||||
var reg = /^[a-zA-Z0-9]{6,16}$/;
|
||||
return reg.test(value);
|
||||
|
||||
}, message: '密码6-16位,且只能为英文、数字'
|
||||
},
|
||||
|
||||
//验证输入密码是否正确
|
||||
oldPassword: {
|
||||
validator: function (value, param) {
|
||||
if(param != value){
|
||||
return false;
|
||||
} else{
|
||||
return true;
|
||||
}
|
||||
|
||||
}, message: '密码不正确'
|
||||
},
|
||||
|
||||
//国内邮编验证
|
||||
zipcode: {
|
||||
validator: function (value) {
|
||||
var reg = /^[1-9]\d{5}$/;
|
||||
return reg.test(value);
|
||||
},
|
||||
message: '邮编必须是非0开始的6位数字.'
|
||||
},
|
||||
//用户账号验证(只能包括 _ 数字 字母)
|
||||
account: {//param的值为[]中值
|
||||
validator: function (value, param) {
|
||||
if (value.length < param[0] || value.length > param[1]) {
|
||||
$.fn.validatebox.defaults.rules.account.message = '用户名长度必须在' + param[0] + '至' + param[1] + '范围';
|
||||
return false;
|
||||
} else {
|
||||
if (!/^[\w]+$/.test(value)) {
|
||||
$.fn.validatebox.defaults.rules.account.message = '用户名只能数字、字母、下划线组成.';
|
||||
return false;
|
||||
} else {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}, message: ''
|
||||
}
|
||||
})
|
||||
Reference in New Issue
Block a user