?? nav_empinput.js
字號:
Ext.onReady(function() {
/*------------------------------基本信息錄入表單面板-----------------------*/
var inputForm = new Ext.form.FormPanel({
id : 'input_form',
title : '<div style="text-align:left">人員基本信息</div>',
renderTo : 'input_form',
frame : true,
height : 260,
labelAlign : 'right',
labelWidth : 80,
bodyStyle : 'padding:5px 0 5px',
defaults : {
labelSeparator : ':'
},
items : [{
xtype : 'panel',
layout : 'column',
border : false,
items : [{
/*---------------------第一列--------------------------- */
columnWidth : .25,
layout : 'form',
border : false,
defaultType : 'textfield',
defaults : {
width : 100
},
items : [new Ext.form.ComboBox({
hiddenName : 'pk_outer_emptype',
fieldLabel : '人員類別',
allowBlank : false,
width : 100,
store : new Ext.data.Store({
proxy : new Ext.data.HttpProxy({
url : 'getById.do?type=emptype',
disableCaching : false
}),
reader : new Ext.data.JsonReader({
root : 'data'
}, ['id', 'typename'])
}),
displayField : 'typename',
valueField : 'id',
typeAhead : true,
forceSelection : true,
selectOnFocus : true,
triggerAction : 'all'
}), {
name : 'name',
fieldLabel : '姓名',
allowBlank : false
}, {
name : 'usedname',
fieldLabel : '曾用名'
}, {
name : 'residentplace',
fieldLabel : '住址'
}, {
xtype : 'combo',
hiddenName : 'education',
fieldLabel : '受教育程度',
allowBlank : false,
width : 100,
mode : 'local',
store : new Ext.data.SimpleStore({
fields : ['value', 'display'],
data : [['primary', '小學'], ['junior', '初中'],
['senior', '高中'],
['regular college', '大學本科'],
['master', '研究生'], ['doctor', '博士']]
}),
displayField : 'display',
valueField : 'value',
typeAhead : true,
forceSelection : true,
selectOnFocus : true,
triggerAction : 'all'
}, {
name : 'computerlevel',
fieldLabel : '計算機水平'
}, {
name : 'officetel',
fieldLabel : '辦公電話'
}]
}, {
/*---------------------第二列--------------------------- */
columnWidth : .25,
layout : 'form',
border : false,
defaultType : 'textfield',
defaults : {
width : 100
},
items : [new Ext.form.ComboBox({
hiddenName : 'pk_outer_dept',
fieldLabel : '部門選擇',
allowBlank : false,
width : 100,
store : new Ext.data.Store({
proxy : new Ext.data.HttpProxy({
url : 'getById.do?type=dept',
disableCaching : false
}),
reader : new Ext.data.JsonReader({
root : 'data'
}, ['id', 'deptname'])
}),
displayField : 'deptname',
valueField : 'id',
typeAhead : true,
forceSelection : true,
selectOnFocus : true,
triggerAction : 'all'
}), {
name : 'idcard',
fieldLabel : '身份證號',
allowBlank : false,
vtype : 'alphanum',
vtypeText : '身份證號必須是由0-9,A-Z組成的字符串'
}, {
xtype : 'datefield',
name : 'birthdate',
fieldLabel : '生日',
allowBlank : false,
width : 100,
format : 'Y-m-d'
}, {
xtype : 'combo',
name : 'marriagestat',
fieldLabel : '婚姻狀況',
allowBlank : false,
width : 100,
mode : 'local',
store : new Ext.data.SimpleStore({
fields : ['value', 'display'],
data : [['unmarried', '未婚'], ['married', '已婚'],
['divorced', '離異']]
}),
displayField : 'display',
valueField : 'value',
typeAhead : true,
forceSelection : true,
selectOnFocus : true,
triggerAction : 'all'
}, {
name : 'partyname',
fieldLabel : '政治面貌'
}, {
name : 'firstforlang',
fieldLabel : '第一外語'
}, {
name : 'mobile',
fieldLabel : '移動電話'
}]
}, {
/*---------------------第三列--------------------------- */
columnWidth : .25,
layout : 'form',
border : false,
defaultType : 'textfield',
defaults : {
width : 100
},
items : [new Ext.form.ComboBox({
hiddenName : 'pk_outer_job',
fieldLabel : '崗位選擇',
allowBlank : false,
width : 100,
store : new Ext.data.Store({
proxy : new Ext.data.HttpProxy({
url : 'getById.do?type=job',
disableCaching : false
}),
reader : new Ext.data.JsonReader({
root : 'data'
}, ['id', 'jobname'])
}),
displayField : 'jobname',
valueField : 'id',
typeAhead : true,
forceSelection : true,
selectOnFocus : true,
triggerAction : 'all'
}), {
name : 'sin',
fieldLabel : '社保號碼',
vtype : 'alphanum',
vtypeText : '社保號必須是數字'
}, {
hiddenName : 'bloodtype',
fieldLabel : '血型',
xtype : 'combo',
width : 100,
mode : 'local',
store : new Ext.data.SimpleStore({
fields : ['value', 'display'],
data : [['A', 'A型'], ['B', 'B型'], ['O', 'O型'],
['unknown', '其他']]
}),
displayField : 'display',
valueField : 'value',
typeAhead : true,
forceSelection : true,
selectOnFocus : true,
triggerAction : 'all'
}, {
name : 'health',
fieldLabel : '健康狀況'
}, {
name : 'partydate',
fieldLabel : '入黨日期',
xtype : 'datefield',
width : 100,
format : 'Y-m-d'
}, {
name : 'firstforlanglevel',
fieldLabel : '第一外語水平'
}, {
name : 'hometel',
fieldLabel : '家庭電話'
}]
}, {
/*---------------------第四列--------------------------- */
columnWidth : .25,
layout : 'form',
border : false,
defaultType : 'textfield',
defaults : {
width : 100
},
items : [{
hiddenName : 'jobtype',
fieldLabel : '工作類型',
xtype : 'combo',
width : 100,
mode : 'local',
store : new Ext.data.SimpleStore({
fields : ['value', 'display'],
data : [['long-time', '固定工作'],
['part-time', '兼職'], ['intern', '實習'],
['temporary work', '臨時工'],
['others', '其他']]
}),
displayField : 'display',
valueField : 'value',
typeAhead : true,
forceSelection : true,
selectOnFocus : true,
triggerAction : 'all'
}, {
xtype : 'radiogroup',
fieldLabel : '性別',
items : [{
boxLabel : '男',
name : 'sex',
inputValue : 1,
checked : true
}, {
boxLabel : '女',
name : 'sex',
inputValue : 2
}]
}, {
name : 'nativeplace',
fieldLabel : '祖籍'
}, {
name : 'jobdate',
fieldLabel : '參加工作日期',
xtype : 'datefield',
width : 100,
format : 'Y-m-d'
}, {
name : 'email',
fieldLabel : 'Email',
vtype : 'email',
vtypeText : '請以正確格式填寫!'
}, {
name : 'interest',
fieldLabel : '愛好'
}]
}]
}],
tbar : [{
text : '新建',
handler : function(btn) {
for (var i = 0; i < fields.length; i++) {
fields[i].enable();
}
}
}, {
text : '保存',
handler : function(btn) {
doSubmit(inputForm, 'new.do?type=emp');
}
}]
});
var fields = getFields(inputForm);
for (var i = 0; i < fields.length; i++) {
fields[i].disable();
}
/*------------------------------主面板-----------------------------------*/
new Ext.Panel({
renderTo : 'tab_nav_empinput',
frame : true,
closeAction : 'hide',// 保證關閉之后再次點擊樹節點能夠再次顯示此界面
height : 600,
autoHeight : false,
layout : 'table',
layoutConfig : {
columns : 1
},
items : [inputForm]
});
// 提交表單函數
function doSubmit(formName, path) {
if (formName.form.isValid()) {
formName.form.submit({
url : path,
method : 'POST',
waitText : '正在處理你的請求...',
success : function(form, action) {
try {
var flag = action.result.success;
if (flag === false)
Ext.Msg.alert('提示', action.result.message);
else if (flag === true)
Ext.Msg.alert('提示', action.result.message);
} catch (e) {
e.toString();
}
},
failure : function(form, action) {
try {
Ext.MessageBox.alert('提示',
action.result.message);
} catch (e) {
e.toString();
}
}
});
}
}
});
// 獲得表單的每個字段
function getFields(fPanel) {
var textArray = fPanel.findByType('textfield');
var comboArray = fPanel.findByType('combo');
var radioArray = fPanel.findByType('radiogroup');
var comboTreeArray = fPanel.findByType('combotree');
var dateArray = fPanel.findByType('datefield');
var areaArray = fPanel.findByType('textarea');
var fieldsArray = new Array();
fieldsArray = textArray.concat(comboArray, radioArray, comboTreeArray,
dateArray, areaArray);
return fieldsArray;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -