easyui1.32 各种问题汇总
问题一
场景:tab切换,每个tab里用div放一个dataGrid,默认display:none隐藏,当display:'block'的时候,dataGrid会显示不全,仅显示一条线。
解决方法:切换到当前tab的时候执行方法 $("#tableid").datagrid("resize");即可解决。
http://bbs.csdn.net/topics/390666562
问题二
场景:dataGrid单元格添加超链接,想点击修改,如何获取当前行数据的问题。
$('#templateGrid').datagrid({
columns:[[
{
title:'',
field: 'id',
checkbox:true,
width:10
}
{
title: '修改',
align:'center',
field: 'modify',
width:50,
formatter:function(value,row,index){
return '<a href="javascript:;" style="color:#00a9ff">修改</a>'
} ]],
onClickCell:function(rowIndex, field, value){//修改弹层
if(field=='modify'){
var row = $('#templateGrid').datagrid('getData').rows[rowIndex];
console.info(row)//当前行数据 }
问题三
$('#xx').form('load',{
ruleName:row.ruleName
})
问题四
场景:弹层里动态生成表单比如combobox,下拉列表看不见的问题
比如我在用layer做弹层的时候,由于layer的层级比较高,combobox的下拉列表就看不到,造成展不开的错觉,实际上是由于下拉列表被弹层所覆盖,如果用layer做弹层,只需要修改layer源码查找
z-index,改小一点就行。
问题五
datagrid删除选择的行或者多行
function delRows(dgName) {
var rows = $(dgName).datagrid("getSelections");
var copyRows = [];
for (var j = 0; j < rows.length; j++) {
copyRows.push(rows[j]);
}
for (var i = 0; i < copyRows.length; i++) {
var index = $(dgName).datagrid('getRowIndex', copyRows[i]);
$(dgName).datagrid('deleteRow', index);
}
} delRows('#templateGrid')
问题六
datebox和datetimebox样式修改,替换原基础风格metro风格easyui.css里日历部分
.calendar {
border-width: 1px;
border-style: solid;
/* padding: 1px;*/
overflow: hidden;
font-size: 12px;
}
.calendar table {
border-collapse: separate;
font-size: 12px;
width: 100%;
height: 100%;
}
.calendar-body thead tr th{
border-bottom:1px solid #ccc;
font-weight:normal;
color:#333;
height: 21px!important;
line-height: 21px!important;
}
.calendar-body tbody tr td{
height: 21px!important;
line-height: 21px!important;
background-color: #fff;
color: #333;
}
.calendar-selected{
background-color: #F32043!important;
color: #fff!important;
border:none!important;
}
.calendar-day.calendar-hover{
background:#f54766!important;
color:#fff;
border:none!important;
}
.datebox-button{padding:5px 0!important;}
.datebox-button a{
border: 1px solid #ccc;
height: 20px;
line-height: 20px;
padding:0 6px;
font-weight:normal;
color:#333;
display:inline-block;
}
.datebox-button a:hover{
background:#F6F6F6; color:#333
}
.calendar-noborder {
border: 0;
}
.calendar-header {
position: relative;
height: 22px;
padding:5px 0;
background-color: #D91600;
}
.calendar-title {
text-align: center;
height: 22px;
}
.calendar-title span {
position: relative;
display: inline-block;
top: 2px;
padding: 0 3px;
height: 18px;
line-height: 18px;
cursor: pointer;
-moz-border-radius: 0px 0px 0px 0px;
-webkit-border-radius: 0px 0px 0px 0px;
border-radius: 0px 0px 0px 0px;
color:#fff
}
.calendar-prevmonth,
.calendar-nextmonth,
.calendar-prevyear,
.calendar-nextyear {
position: absolute;
top: 50%;
margin-top: -7px;
width: 14px;
height: 14px;
cursor: pointer;
font-size: 1px;
-moz-border-radius: 0px 0px 0px 0px;
-webkit-border-radius: 0px 0px 0px 0px;
border-radius: 0px 0px 0px 0px;
}
.calendar-prevmonth {
left: 20px;
background: url('images/calendar_arrows.png') no-repeat -18px -2px;
}
.calendar-nextmonth {
right: 20px;
background: url('images/calendar_arrows.png') no-repeat -34px -2px;
}
.calendar-prevyear {
left: 3px;
background: url('images/calendar_arrows.png') no-repeat -1px -2px;
}
.calendar-nextyear {
right: 3px;
background: url('images/calendar_arrows.png') no-repeat -49px -2px;
}
.calendar-body {
position: relative;
}
.calendar-body th,
.calendar-body td {
text-align: center;
}
.calendar-day {
border: 0;
/* padding: 1px;*/
cursor: pointer;
-moz-border-radius: 0px 0px 0px 0px;
-webkit-border-radius: 0px 0px 0px 0px;
border-radius: 0px 0px 0px 0px;
}
.calendar-other-month {
/* opacity: 0.3;
filter: alpha(opacity=30);*/
color:#999!important;
}
.calendar-other-month:hover{
color:#fff!important;
}
.calendar-menu {
position: absolute;
top: 0;
left: 0;
width: 180px;
height: 150px;
padding: 5px;
font-size: 12px;
display: none;
overflow: hidden;
}
.calendar-menu-year-inner {
text-align: center;
padding-bottom: 5px;
}
.calendar-menu-year {
width: 40px;
text-align: center;
border-width: 1px;
border-style: solid;
margin: 0;
padding: 2px;
font-weight: bold;
}
.calendar-menu-prev,
.calendar-menu-next {
display: inline-block;
width: 21px;
height: 21px;
vertical-align: top;
cursor: pointer;
-moz-border-radius: 0px 0px 0px 0px;
-webkit-border-radius: 0px 0px 0px 0px;
border-radius: 0px 0px 0px 0px;
}
.calendar-menu-prev {
margin-right: 10px;
background: url('images/calendar_arrows.png') no-repeat 2px 2px;
}
.calendar-menu-next {
margin-left: 10px;
background: url('images/calendar_arrows.png') no-repeat -45px 2px;
}
.calendar-menu-month {
text-align: center;
cursor: pointer;
font-weight: bold;
-moz-border-radius: 0px 0px 0px 0px;
-webkit-border-radius: 0px 0px 0px 0px;
border-radius: 0px 0px 0px 0px;
}
.calendar-body th,
.calendar-menu-month {
color: #919191;
}
.calendar-day {
color: #444;
}
.calendar-sunday {
color: #CC2222;
}
.calendar-saturday {
color: #00ee00;
}
.calendar-today {
color: #0000ff;
}
.calendar-menu-year {
border-color: #ddd;
}
.calendar {
border-color: #ddd;
}
.calendar-header {
background: #D91600;
}
.calendar-body,
.calendar-menu {
background: #fff;
}
.calendar-body th {
background: #fff;
}
.calendar-hover,
.calendar-nav-hover,
.calendar-menu-hover {
background-color: #F54766;
color: #444;
}
.calendar-hover {
border: 1px solid #ddd;
padding: 0;
}
.calendar-selected {
background-color: #CCE6FF;
color: #000;
border: 1px solid #99cdff;
padding: 0;
}
.datebox-calendar-inner {
height: 190px;
}
.datebox-calendar-inner .spinner{margin-left:3px!important;}
.datebox-button {
height: 18px;
margin:5px;
margin-top:0;
font-size: 12px;
text-align: center;
}
.datebox-current,
.datebox-close,
.datebox-ok {
text-decoration: none;
/* font-weight: bold;
opacity: 0.6;
filter: alpha(opacity=60);*/
}
.datebox-current,
.datebox-close {
float: left;
}
.datebox-close {
float: right;
}
.datebox-button-hover {
opacity: 1.0;
filter: alpha(opacity=100);
}
.datebox .combo-arrow {
background-image: url('images/datebox_arrow.png');
background-position: center center;
}
.combo.datebox{padding-right:10px;}
.datebox-button {
background-color: #fff;
}
.datebox-current,
.datebox-close,
.datebox-ok {
color: #777;
}
JS部分修改:搜索下面两部分进行修改宽度,默认width:180
$.fn.calendar.defaults={width:240,height:180...
$.fn.datebox.defaults=$.extend({},$.fn.combo.defaults,{panelWidth:240...
图片替换:calendar_arrows(白色) spinner_arrows两张图片
最终效果:
问题七
datagrid行内单元格鼠标悬浮改变其内容为查看详情
var _grid = $('#templateGrid').datagrid({
//...列
onLoadSuccess: function () { //鼠标悬停效果
var tableTd = $('div.datagrid-body td[field="selection"]'); //selection是列名
tableTd.each(function () {
var _this = $(this);
var index = _this.parent('tr').attr('datagrid-row-index');
var rows = _grid.datagrid('getRows');
var currentRow = rows[index];
var currentValue = currentRow.selection //selection是列名
_this.mouseenter(function () {
_this.find('a').text('查看详情')
}).mouseleave(function () {
_this.find('a').text(currentValue)
})
});
}
})
问题八
datagrid列字段太多,当没有数据时,字段显示不全,滚动条不出现的问题
给datagrid配置属性时设置一个事件:
onBeforeLoad:function () {
$(this).prev(".datagrid-view2").children(".datagrid-body").html("<div style='width:" + $(this).prev(".datagrid-view2").find(".datagrid-header-row").width() + "px;border:solid 0px;height:1px;'></div>");
}
注:datagrid如果配置了属性fitColumns:true要删掉 当装载表格数据时重写onBeforeLoad方法
$('#sampleGrid').datagrid({
onBeforeLoad: null, //重写onBeforeLoad方法
'data': data
});
问题九
日历时间框的格式化
$('.easyui-datebox').datebox({
formatter:function(date){
var y = date.getFullYear();
var m = date.getMonth()+1;
var d = date.getDate();
return y+'-'+m+'-'+d;
}
}) //date的格式化yyyy-mm-dd $('.easyui-datetimebox').datetimebox({
formatter:function(date){
var y = date.getFullYear();
var m = date.getMonth()+1;
var d = date.getDate();
var h = date.getHours();
var min = date.getMinutes();
var sec = date.getSeconds();
var str = y+'/'+(m<10?('0'+m):m)+'/'+(d<10?('0'+d):d)+'/'+' '+(h<10?('0'+h):h)+':'+(min<10?('0'+min):min)+':'+(sec<10?('0'+sec):sec);
return str;
}
});//datetime的格式化yyyy/m/d h:m:s
问题十
validaebox自定义验证规则添加
//扩展验证规则
$.fn.validatebox.defaults = {
required: false,
validType: null,
missingMessage: '输入不能为空.',
invalidMessage: null,
rules: {
email:{
validator: function(value){
return /^((([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+(\.([a-z]|\d|[!#\$%&'\*\+\-\/=\?\^_`{\|}~]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])+)*)|((\x22)((((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(([\x01-\x08\x0b\x0c\x0e-\x1f\x7f]|\x21|[\x23-\x5b]|[\x5d-\x7e]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(\\([\x01-\x09\x0b\x0c\x0d-\x7f]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]))))*(((\x20|\x09)*(\x0d\x0a))?(\x20|\x09)+)?(\x22)))@((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?$/i.test(value);
},
message: '请输入正确的邮箱地址.'
},
url: {
validator: function(value){
return /^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(value);
},
message: '请输入正确的URL链接.'
},
//定义字符输入数量的区间(length)
length: {
validator: function(value, param){
var len = $.trim(value).length;
return len >= param[0] && len <= param[1]
},
message: '内容长度介于{0}和{1}之间.'
},
//定义字符最小输入数量(minLength)
minLength: {
validator: function(value, param){
return value.length >= param[0];
},
message: '最少输入 {0} 个字符.'
},
//定义字符最大输入数量(maxLength)
maxLength: {
validator: function(value, param){
return value.length <= param[0];
},
message: '最多输入 {0} 个字符.'
},
//自定义正则校验表达式(regExp)
regExp: {
validator: function (value, param) {
console.info(param[0])
var regExp = param[0];
var re = new RegExp(regExp);
return re.test(value);
},
message: '{1}'
},
//自定义校验函数接口(checker)
checker: {
validator: function (value, param) {
var checker = param[0];
if ($.isFunction(checker)) {
return checker(value);
}
return true;
},
message: '{1}'
},
phone: {
validator: function(value) {
return /^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$/i.test(value);
},
message: '请输入正确的电话号码.'
},
mobile: {
validator: function(value) {
return /^1\d{10}$/.test(value);
},
message: '手机号码不正确.'
},
idcard: {
validator: function(value) {
return /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/.test(value);
},
message: '身份证号码不正确.'
},
ip: {
validator: function(value) {
return /^([0-9]|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.([0-9]|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.([0-9]|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.([0-9]|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])$/.test(value);
},
message: 'ip地址格式不正确.'
},
text: {
validator: function(value) {
return /^[A-Za-z0-9\u4e00-\u9fa5]+$/.test(value);
},
message: '只能输入数字字母中文不允许有符号.'
},
number: {
validator: function(value) {
return /^[+-]?\d+(\.\d+)?$/.test(value);
},
message: '只能输入数字正负数或小数.'
}
}
}; //使用说明
//是否必须输入(required)
using(["validatebox"], function () {
$('#validatebox1').validatebox({
required: true
});
}); //定义字符最小输入数量(minLength)
using(["validatebox"], function () {
$('#validatebox2').validatebox({
required: true,
validType:'minLength[5]'
});
}); //定义字符最大输入数量(maxLength)
using(["validatebox"], function () {
$('#validatebox3').validatebox({
required: true,
validType:'maxLength[5]'
});
}); //定义字符输入数量的区间(length)
using(["validatebox"], function () {
$('#validatebox4').validatebox({
required: true,
validType:'length[1,5]'
});
}); //自定义正则校验表达式(regExp)
using(["validatebox"], function () {
$('#validatebox6').validatebox({
required: true,
validType:"regExp['^[A-Za-z]*$','必须为字母']"
});
}); //自定义校验函数接口(checker)
var customFn=function(value){
if(/^\d*$/.test(value)){
return true;
}else{
return false;
}
}
using(["validatebox"], function () {
$('#validatebox7').validatebox({
required: true,
validType:"checker[customFn,'必须为符合自定义校验函数的输入值(这里假定必须为数字)']"
});
}); //定义输入类型邮件(inputType-email)
using(["validatebox"], function () {
$('#validatebox9').validatebox({
required: true,
validType:'email'
});
});
//定义输入类型电话号码(inputType-phone)
using(["validatebox"], function () {
$('#validatebox10').validatebox({
required: true,
validType:'phone'
});
}); //定义输入类型手机号码(inputType-mobile)
using(["validatebox"], function () {
$('#validatebox12').validatebox({
required: true,
validType:'mobile'
});
});
//定义输入类型身份证号码(inputType-idcard)
using(["validatebox"], function () {
$('#validatebox13').validatebox({
required: true,
validType:'idcard'
});
});
//定义输入类型IP地址(inputType-ip)
using(["validatebox"], function () {
$('#validatebox14').validatebox({
required: true,
validType:'ip'
});
});
//定义输入类型文本(inputType-text)
using(["validatebox"], function () {
$('#validatebox15').validatebox({
required: true,
validType:'text'
});
});
//定义输入类型数字(inputType-number)
using(["validatebox"], function () {
$('#validatebox16').validatebox({
required: true,
validType:'number'
});
});
easyui sleect下拉框插件独立版:
http://files.cnblogs.com/files/leyi/easyuiSelect.rar
easyui1.32 各种问题汇总的更多相关文章
- db2 日期时间格式
db2日期和时间常用汇总 1.db2可以通过SYSIBM.SYSDUMMY1.SYSIBM.DUAL获取寄存器中的值,也可以通过VALUES关键字获取寄存器中的值. SELECT 'HELLO DB2 ...
- Jquery 回到顶部
转:http://www.cnblogs.com/DemoLee/archive/2012/04/20/2459082.html 用jQuery实现渐隐渐显的返回顶部效果(附多图) 先来看几个图片 ...
- virtualenvwrapper 虚拟环境的使用 和 python 安装源的更改
virtualenvwrapper 虚拟环境的使用 鉴于virtualenv不便于对虚拟环境集中管理,所以推荐直接使用virtualenvwrapper. virtualenvwrapper提供了一系 ...
- OSPFV3综合实验 (第三组)
拓扑图 本次试验规划:拓扑分4个区域,其中区域2采用帧中继实现区域内互通的前提下配置OSPF.ospfv3.R7与R8之间配置rip实现互通,区域1作为nssa区域,实现路由注入.最终实现全局互通. ...
- Windows7SP1补丁包(Win7补丁汇总) 32位/64位版 更新截至2016年11月
Windows7SP1(64位)补丁包(Win7补丁汇总)更新到本月最新.包含Windows7SP1中文版所有重要补丁,可离线安装,适用于Windows 7 SP1 64位 简体中文系统.包含Inte ...
- hadoop2.6.0汇总:新增功能最新编译 32位、64位安装、源码包、API下载及部署文档
相关内容: hadoop2.5.2汇总:新增功能最新编译 32位.64位安装.源码包.API.eclipse插件下载Hadoop2.5 Eclipse插件制作.连接集群视频.及hadoop-eclip ...
- python全栈开发 * 32知识点汇总 * 180717
32 网络编程 (一)一.架构 定义:程序员开发的一种模式. 分类: C/S 架构 C/S即:Client与Server , 客户端/ 服务器模式 . 缺点 : 冗余 B/S 架构 Browser与S ...
- Vue使用中遇到问题汇总(一)32个
1.安装一些需要编译的包:提示没有安装python.build失败等 因为一些 npm 的包安装需要编译的环境,mac 和 linux 都还好,大多都齐全 .window 用户依赖 visual st ...
- 关于Windows与Linux下32位与64位开发中的数据类型长度的一点汇总
32位与64位的数据类型长度是不一样的,而且windows和linux也有些许区别,下面把64位下的数据长度列表如下(无符号unsigned和有符号的长度一样): linux64 ...
随机推荐
- mysql控制台操作
显示表结构 : show create table table_name 复制表:insert into table_name1 select * from table_name2
- 加载json文件没显示图片
IOS 9新特性要求App内访问的网络必须使用HTTPS协议. 但是现在公司的项目使用的是HTTP协议,使用私有加密方式保证数据安全.现在也不能马上改成HTTPS协议传输. 以下解决办法: 在info ...
- 第七课第三节,T语言流程语句(版本5.0)
for语句 for和while语句一样,都是用来做循环操作的,只是他们的使用方法不一样 (注:关键字,for,end) 执行流程图解: 实例代码: for(var i=0;i<20;i++) / ...
- Oracle学习系列6
Oracle学习系列6 ************************************************************************************ 删除约 ...
- windows下面安装Python和pip
windows下面安装Python和pip 安装Python 第一步,我们先来安装Python, https://www.python.org/downloads/ 这里选择的是2.7.10 第二步. ...
- openssl 心脏滴血
yum -y update openssl openssl verson rpm -q --changelog openssl | grep CVE-
- HighCharts使用心得
HighCharts使用心得 前言: 之前很早的一个项目中使用过highcharts,感觉挺方便的,图表类型也比较丰富,而且还支持数据的下钻,但是如果投入商业使用的话还会有一些版权的问题,所以后来就使 ...
- [Spring MVC] - 表单提交
Spring MVC自带的表单标签比较简单,很多时候需要借助EL和JSTL来完成. 下面是一个比较简单的表单提交页面功能: 1.User model package com.my.controller ...
- Array补充方法
Array.prototype.Contain = function (item) { var arr = this; if (arr == null || arr.length == 0) { re ...
- IEA For PCS7
1. IEA简介 PCS7中的Import/Export Assistant (IEA) 软件是对大量数据进行合理工程组态的有效工具,它以过程标签类型的多重使用和实例解决方案为基础.该软件特别适用于具 ...