📄 comm.js
字号:
for(var k=0;k<w;k++)x[k]=me.d.data[i][k];
me.d.data1.push(x);
}
}
}
}
//-------------------------------------------------------------------------------
function PageA(){
this.o;
this.c;
this.d;
this.g;
this.server=function(){};
this.select;
this.qsj='getData'; //取数据
this.init=function(){
this.d=new yg.DefaultDataModel([]);
this.d.data=[];
this.g=new yg.Grid('p'+this.o,this.d,this.c);
this.g.selModel=yg.SingleSelectionModel();
this.g.render();
}
this.getData=function(me){
me.g.clearSelections();
me.server[me.select](function(data){
while(me.d.data.length>0)me.d.removeRow(0);
for(var i=0;i<data.length;i++)me.d.addRow(data[i]);
});
}
this.getData1=function(me,param){
me.g.clearSelections();
me.server[this.select](param,function(data){
while(me.d.data.length>0)me.d.removeRow(0);
for(var i=0;i<data.length;i++)me.d.addRow(data[i]);
});
}
}
//-------------------------------------------------------------------------------
function Dialog(){
var params=[];
var dialog;
this.done=false;
this.c=[]; //是否有检查框
this.o; //坐标
this.m; //行数
this.n; //列数
this.l=[]; //label(m*n)
this.top0=10; //左上角
this.left0=10;
this.a=100; //宽度调整值
this.b=85; //高度调整值
this.lAndt=90; //lebel和text间隔
this.horizontal=190; //横向间隔
this.vertical=30; //纵向间隔
this.data=[]; //数据(m*n)
this.type=[]; //输入类型(m*n)
this.opt=[]; //列表数据(m*n)
this.textWidth=150; //文本框宽度
this.dlg; //对话框
this.leftD=650; //日期输入框坐标
this.topD=200;
this.callBack=function(){};//回调函数
this.getTopij=function(i,j){//计算top
return i*this.vertical+this.top0;
};
this.getLeftij=function(i,j){
return j*this.horizontal+this.left0;
};
this.getWidth=function(){
return this.n*this.horizontal+this.a;
};
this.getHeight=function(){
return this.m*this.vertical+this.b;
};
this.getId=function(){
return 'dlg'+this.o;
}
this.getTextName=function(i,j){
return this.getId()+'t'+i+'_'+j;
}
this.getListName=function(i,j){
return this.getId()+'l'+i+'_'+j;
}
this.getTextElement=function(i,j){
return document.getElementById(this.getTextName(i,j));
}
this.getTextValue=function(i,j){
var text;
if(this.type[i][j]=='list'){
try{
text=document.getElementById(this.getListName(i,j)).value;
}
catch(e){
text='';
}
}
else{
try{
text=document.getElementById(this.getTextName(i,j)).value;
}
catch(e){
text='';
}
}
return text;
};
this.getData1=function(){//横向
this.data=[];
for(var i=0;i<this.m;i++){
for(var j=0;j<this.n;j++){
if(this.getCheckValue(i,j)){
if(this.type[i][j]=='date')this.data.push(this.getTextValue(i,j));
else this.data.push('%'+this.getTextValue(i,j)+'%');
}
else {
if(this.type[i][j]=='date')this.data.push('00000000');
else this.data.push('%');
}
}
}
return this.data;
};
this.getData2=function(){//纵向
this.data=[];
for(var i=0;i<this.n;i++){
for(var j=0;j<this.m;j++){
if(this.getCheckValue(j,i)){
if(this.type[j][i]=='date')this.data.push(this.getTextValue(j,i));
else this.data.push('%'+this.getTextValue(j,i)+'%');
}
else {
if(this.type[j][i]=='date')this.data.push('00000000');
else this.data.push('%');
}
}
}
return this.data;
};
this.getData3=function(){//横向
var data=[];
for(var i=0;i<this.m;i++){
for(var j=0;j<this.n;j++){
if(this.type[i][j]!='none')data.push(this.getTextValue(i,j));
}
}
return data;
};
this.getData4=function(){//纵向
var data=[];
for(var i=0;i<this.n;i++){
for(var j=0;j<this.m;j++){
if(this.type[j][i]!='none')data.push(this.getTextValue(j,i));
}
}
return data;
};
this.getCheckName=function(i,j){
return this.getId()+'c'+i+j;
};
this.getCheckValue=function(i,j){
if(this.c[i][j])return document.getElementById(this.getCheckName(i,j)).checked;
else return false;
};
this.setCheckValue=function(i,j){
if(this.c[i][j]){
var el=document.getElementById(this.getCheckName(i,j));
el.checked=true;
el.disabled=true;
}
};
this.init_lAndt=function(){
var s='';
for(var i=0;i<this.m;i++){
for(var j=0;j<this.n;j++){
s+='<div style="text-align:justify;position:absolute;left:'+this.getLeftij(i,j)+'px;top:'+this.getTopij(i,j)+'px">';
s+=(this.c[i][j]==true)?'<input id="'+this.getCheckName(i,j)+'" type="checkbox"/>'+this.l[i][j]:this.l[i][j];
if(this.type[i][j]=='list'){
s+='<select id="'+this.getListName(i,j)+'" name="'+this.getListName(i,j)+'"style="position:absolute;left:'+this.lAndt+'px;top:-1px;width:'+this.textWidth+'px">';
for(var k=0;k<this.opt[i][j].length;k++)s+='<option value="'+this.opt[i][j][k]+'">'+this.opt[i][j][k]+'</option >';
s+='</select>';
}
else if(this.type[i][j]=='text'){
s+='<INPUT id="'+this.getTextName(i,j)+'" name="'+this.getTextName(i,j)+'" TYPE="text" style="position:absolute;left:'+this.lAndt+'px;top:-1px;width:'+this.textWidth+'px"/>';
}
else if(this.type[i][j]=='pass'){
s+='<INPUT id="'+this.getTextName(i,j)+'" name="'+this.getTextName(i,j)+'" TYPE="password" style="position:absolute;left:'+this.lAndt+'px;top:-1px;width:'+this.textWidth+'px"/>';
}
else if(this.type[i][j]=='file'){
s+='<INPUT id="'+this.getTextName(i,j)+'" name="'+this.getTextName(i,j)+'" TYPE="file" style="position:absolute;left:'+this.lAndt+'px;top:-1px;width:'+this.textWidth+'px"/>';
}
else if(this.type[i][j]=='date'){
var calId=this.getTextName(i,j)+'cal';
var cmd='YAHOO.calendar.'+calId+'=new YAHOO.widget.Calendar("'+calId+'","calendar",{title:"选择日期:",close:true});';eval(cmd);
cmd='YAHOO.calendar.'+calId+'.render();';eval(cmd);
s+='<INPUT id="'+this.getTextName(i,j)+'" TYPE="text" style="position:absolute;left:'+this.lAndt+'px;top:-1px;width:'+this.textWidth+'px"/><img id="'+calId+'i" alt="选择日期" src="images/layout/ns-expand.gif" style="cursor:hand;position:absolute;left:'+(this.lAndt+this.textWidth+1)+'px;top:5px"/>';
}
s+='</div>';
}
}
var el=document.getElementById(this.getId()+'c');
el.innerHTML=s;
for(var i=0;i<this.m;i++){
for(var j=0;j<this.n;j++){
if(this.type[i][j]=='list'){
YAHOO.util.Event.addListener(this.getListName(i,j),'change',this.hideCal);
}
else if(this.type[i][j]=='text'){
YAHOO.util.Event.addListener(this.getTextName(i,j),'focus',this.hideCal);
}
else if(this.type[i][j]=='date'){
var calId=this.getTextName(i,j)+'cal';
var u='param'+i+j;
var cmd='var '+u+'=[i,j,"YAHOO.calendar."+calId,this.getTextName(i,j)];';eval(cmd);
cmd='YAHOO.util.Event.addListener("'+calId+'i", "click",this.showCal,'+u+',true);';eval(cmd);
cmd='YAHOO.calendar.'+calId+'.selectEvent.subscribe(this.getDate,'+u+',true);';eval(cmd);
}
}
}
};
this.showCal=function(){
var elt=document.getElementById(this[3]);
var elc=this[2];
var cmd=elc+'.show();';eval(cmd);
var el=document.getElementById('calendar');
params=this;
el.style.top=event.y-100;
var x=event.x;
if(x>850)x=x-150;
el.style.left=x;
elt.value='';
};
this.hideCal=function(){
var el=document.getElementById('calendar');
if(el)el.style.display='none';
}
this.hide=function(){
dialog.hide();
};
this.getDate=function(type,args,obj){//取日期送入text框
var elt=document.getElementById(params[3]);
var dates=args[0];
var date=dates[0];
var year=date[0], month = date[1], day = date[2];
elt.value=''+year+(month<10?'0'+month:month)+(day<10?'0'+day:day);
var el=document.getElementById('calendar');
el.style.display='none';
}
this.init=function(){
this.init_lAndt();
dialog=new YAHOO.ext.BasicDialog(this.getId(),{
modal:false,
autoTabs:false,
width:this.getWidth(),
height:this.getHeight(),
shadow:true,
minWidth:this.a,
autoScroll:true,
resizable:false,
minHeigth:this.b
});
dialog.addListener('hide',this.hideEvent,this,true);
this.dlg=dialog;
if(this.my)this.init_button(this);
return this.dlg;
};
this.hideEvent=function(){
if(this.hideCal)this.hideCal();
if(this.callBack)this.callBack();
}
this.addButton=function(label,handler,dlg){//增加按钮
dialog.addButton(label,handler,dlg);
};
this.show=function(){
for(var i=0;i<this.m;i++){
for(var j=0;j<this.n;j++){
if(this.type[i][j]=='list'){
}
else if(this.type[i][j]=='text'){
document.getElementById(this.getTextName(i,j)).value='';
}
else if(this.type[i][j]=='date'){
var calId=this.getTextName(i,j)+'cal';
}
}
}
this.done=false;
dialog.show();
};
this.getInputElement=function(name){
for(var i=0;i<this.m;i++){
for(var j=0;j<this.n;j++){
if(this.l[i][j]==name){
return this.getTextElement(i,j);
}
}
}
return null;
};
this.init_button=function(me){
this.addButton('确定',function(){
me.my.p=me.getData2();
if(me.validate && !me.validate())return;
me.my.p.push(0);
me.my.pageCount='?';
var mOrk='m';
if(me.k)mOrk='k';
var refreshStr='SelectByCondition';
if(me.refreshStr)refreshStr=me.refreshStr;
me.my.currentMethod="my"+me.o+".p[my"+me.o+".S."+mOrk+"]=xxx;my"+me.o+".refresh(my"+me.o+".S.my,'"+refreshStr+"',my"+me.o+".p);";
me.my.refresh(me.my,refreshStr,me.my.p);
if(me.my.slide){
me.my.slide.init();
}
me.my.S.dlg.hide();
},me.my.S.dlg);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -