showmethod_wev8.js
3.72 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
Ext.namespace("Ext.ux.form");
var win;
var triggerObj;
Ext.ux.form.Showmethod=Ext.extend(Ext.form.TriggerField,{
defaultAutoCreate:{
tag:"input",type:"text",size:"16",style:"cursor:default;",autocomplete:"off"
}
,triggerClass:"x-form-search-trigger",validateOnBlur:false,multiSelect:false,showOnFocus:false,sFeatures : "dialogHeight:500px;dialogWidth:800px;status:no;center:yes;resizable:yes",url:"blank",initComponent:function(){
Ext.ux.form.Showmethod.superclass.initComponent.call(this);
if(this.store){
if(!this.valueField){
this.valueField="value"
}
if(!this.displayField){
this.displayField="text"
}
}
}
,onRender:function(b,a){
if(this.isRendered){
return
}
this.readOnly=true;
if(this.textarea){
this.defaultAutoCreate={
tag:"textarea",style:"cursor:default;width:124px;height:65px;",autocomplete:"off"
};
this.displaySeparator="\n"
}
Ext.ux.form.Showmethod.superclass.onRender.call(this,b,a);
if(this.hiddenName){
this.hiddenField=this.el.insertSibling({
tag:"input",type:"hidden",name:this.hiddenName,id:(this.hiddenId||this.hiddenName)
}
,"before",true);
this.hiddenField.value=this.hiddenValue!==undefined?this.hiddenValue:this.value!==undefined?this.value:"";
this.el.dom.removeAttribute("name")
}
this.el.dom.removeAttribute("name");
if(this.showOnFocus){
this.on("focus",this.onTriggerClick,this)
}
this.isRendered=true
}
,onSelect:function(f){
if(f){
if(this.store&&!this.store.getById(f[0])){
var a=Ext.data.Record.create([{
name:this.valueField
}
,{
name:this.displayField
}
]);
var e;
if(f[1].indexOf("<a")>-1){
var b=f[1].split("</a>");
var d;
for(var c=0;c<b.length;c++){
if(c==0){
d=b[c].substring(b[c].indexOf(">")+1,b[c].length)
}
else{
d+=","+b[c].substring(b[c].indexOf(">")+1,b[c].length)
}
}
e=Ext.decode("{'"+this.valueField+"':'"+f[0]+"','"+this.displayField+"':'"+d.substring(0,d.length-1)+"'}")
}
else{
e=Ext.decode("{'"+this.valueField+"':'"+f[0]+"','"+this.displayField+"':'"+f[1]+"'}")
}
this.store.add([new a(e,f[0])])
}
Ext.form.ComboBox.superclass.setValue.call(this,f[1]);
this.value=f[0];
if(this.hiddenField){
this.hiddenField.setAttribute("value",f[0])
}
}
if(Ext.QuickTips){
Ext.QuickTips.enable()
}
}
,getValue:function(){
if(this.valueField){
return typeof this.value!="undefined"?this.value:""
}
else{
return Ext.form.ComboBox.superclass.getValue.call(this)
}
}
,setValue:function(a){
var c=a;
if(this.valueField){
var b=this.findRecord(this.valueField,a);
if(b){
c=b.data[this.displayField]
}
else{
if(this.valueNotFoundText!==undefined){
c=this.valueNotFoundText
}
}
}
this.lastSelectionText=c;
if(this.hiddenField){
this.hiddenField.value=a
}
Ext.form.ComboBox.superclass.setValue.call(this,c);
this.value=a
}
,findRecord:function(c,b){
var a;
if(this.store.getCount()>0){
this.store.each(function(d){
if(d.data[c]==b){
a=d;
return false
}
})
}
return a
}
,onTriggerClick:function(a){
triggerObj = Ext.getCmp(this.id);
var theStoreRecord = this.storeRecord;
var theEditGrid = this.editgrid;
theEditGrid.stopEditing();
var mobileModelDlg = top.createTopDialog();//定义Dialog对象
mobileModelDlg.Model = true;
mobileModelDlg.Width = 900;//定义长度
mobileModelDlg.Height = 400;
mobileModelDlg.URL = this.url;
mobileModelDlg.Title = SystemEnv.getHtmlNoteName(4072,readCookie("languageidweaver"));
mobileModelDlg.show();
mobileModelDlg.onCloseCallbackFn=function(result){
theStoreRecord.set('showmethod',result);
};
}
});
Ext.reg("xShowmethod",Ext.ux.form.Showmethod);