ExtJs 添加员工 实例 ---- 锚点布局 anchor 可自动伸缩
代码如下:
<script type="text/javascript">
Ext.onReady(function () {
// 创建一条记录行, job 为 displayField 名称
var JOB = Ext.data.Record.create([{ name: "job"}]);
new Ext.Window({
title: "添加人员",
width: 500,
height: 350,
layout: "form",
labelWidth: 55,
plain: true,
bodyStyle: "padding:5px",
defaultType: "textfield",
defaults: { anchor: "95%" },
items: [{
xtype: "panel",
frame: true,
baseCls: "x-plain",
layout: "column",
items: [{
columnWidth: 0.5,
layout: "form",
labelWidth: 55,
defaultType: "textfield",
baseCls: "x-plain",
defaults: { width: 160 },
items: [{
fieldLabel: "姓名"
}, {
id: "age",
fieldLabel: "年龄",
value: 20
}, {
xtype: "datefield",
format: "Y-m-d",
value: new Date(),
readOnly: true,
fieldLabel: "出生日期",
listeners: {
"blur": function () {
var age = new Date().getFullYear() - this.getValue().getFullYear() + 1;
Ext.getCmp("age").setValue(age);
}
}
}, {
fieldLabel: "联系电话"
}, {
fieldLabel: "手机号码"
}, {
fieldLabel: "电子邮件"
}, {
xtype: "combo",
triggerAction: "all",
readOnly: true,
value: "男",
store: ['男', '女'],
fieldLabel: "性别"
}]
}, {
columnWidth: 0.5,
layout: "form",
labelWidth: 55,
baseCls: "x-plain",
items: {
id: "imgTest",
xtype: "textfield",
fieldLabel: "个人照片",
width: 163,
height: 177,
inputType: "image"
}
}]
}, {
fieldLabel: "身份证号",
width: 400
}, {
fieldLabel: "具体地址",
width: 400
}, {
xtype: "panel",
layout: "column",
baseCls: "x-plain",
bodyStyle: "padding:5px",
defaults: { baseCls: "x-plain" },
items: [{
columnWidth: 0.4,
layout: "form",
labelWidth: 50,
items: {
id: "jobs",
xtype: "combo",
mode: "local",
anchor: "98%",
triggerAction: "all",
displayField: "job",
readOnly: true,
store: new Ext.data.SimpleStore({
fields: ["job"],
data: [['网络工程'], ['软件工程'], ['土木工程']]
}),
fieldLabel: "职位",
listeners: {
"select": function (_combo, _record, _index) {
_combo.selectItem = _record;
}
}
}
}, {
columnWidth: 0.2,
items: {
xtype: "button",
text: "添加职位",
handler: function () {
var _job = Ext.getCmp("jobs");
Ext.MessageBox.prompt("添加职位", "职位名称", function (_btn, _text) {
if (_text == null || _text == "") {
Ext.MessageBox.alert("操作提示", "职位名称不能为空!");
return;
}
if (_btn == "ok") {
// 往下拉列表插入一条数据
this.store.insert(0, new JOB({ job: _text }));
// 设置当前选择的数据
this.setValue(_text);
// 设置第一条数据到 自定义的选择项
this.selectItem = this.store.getAt(0);
}
}, _job);
}
}
}, {
columnWidth: 0.2,
items: {
xtype: "button",
text: "修改职位",
handler: function () {
var _job = Ext.getCmp("jobs");
if (_job.selectItem != null) {
Ext.MessageBox.prompt("修改职位", "职位名称", function (_btn, _text) {
if (_text == null || _text == "") {
Ext.MessageBox.alert("操作提示", "职位名称不能为空!");
return;
}
if (_btn == "ok") {
this.selectItem.set("job", _text);
this.setValue(_text);
}
}, _job, false, _job.getValue());
} else {
Ext.MessageBox.alert('操作提示', '暂无可修改的数据!');
}
}
}
}, {
columnWidth: 0.2,
items: {
xtype: "button",
text: "删除职位",
handler: function () {
var _job = Ext.getCmp("jobs");
if (_job.selectItem != null) {
Ext.MessageBox.confirm("操作提示", "你确认删除当前职位?", function (_btn) {
if (_btn == "yes") {
this.store.remove(this.selectItem);
if (this.store.getCount() != 0) {
this.setValue(this.store.getAt(0).get("job"));
this.selectItem = this.store.getAt(0);
} else {
this.setValue("");
this.selectItem = null;
}
}
}, _job);
} else {
Ext.MessageBox.alert('操作提示', '暂无可删数据!');
}
}
}
}]
}],
showLock: false,
listeners: {
"show": function (_window) {
if (!_window.showLock) {
// 根据类型名和索引得到对象,getEl 是得到HTML元素
//_window.findByType("textfield")[6].getEl().dom.src = "img/default_pic.gif";
// 根据ID得到 Ext对象
Ext.getCmp('imgTest').getEl().dom.src = "img/default_pic.gif";
_window.showLock = true;
}
// 设置职位的默认值为第一项
var _job = Ext.getCmp("jobs");
var _store = _job.store;
// 取得第一项,字段为 job 的值
var jobValue = _store.getAt(0).get("job");
_job.setValue(jobValue);
_job.selectItem = _store.getAt(0);
}
},
buttons: [{
text: "确定",
handler: function () {
// 根据buttons集合的索引得到Ext对象
alert(this.ownerCt.buttons[1].text);
}
}, {
text: "取消"
}]
}).show();
});
</script>
ExtJs 添加员工 实例 ---- 锚点布局 anchor 可自动伸缩的更多相关文章
- FineUI第十二天---锚点布局
锚点布局的典型结构: <x:Panel Layout="Anchor" runat="server"> <Items ...
- 无废话ExtJs 入门教程十六[页面布局:Layout]
无废话ExtJs 入门教程十六[页面布局:Layout] extjs技术交流,欢迎加群(201926085) 首先解释什么是布局: 来自百度词典的官方解释:◎ 布局 bùjú: [distributi ...
- Windows 8实例教程系列 - 布局控制
原文:Windows 8实例教程系列 - 布局控制 与传统应用类似,Windows store应用允许开发人员通过布局控件管理应用UI. 本篇将讨论Windows8布局设计控制. Windows 8布 ...
- asp.net中生成缩略图并添加版权实例代码
这篇文章介绍了asp.net中生成缩略图并添加版权实例代码,有需要的朋友可以参考一下 复制代码代码如下: //定义image类的对象 Drawing.Image image,newimage; //图 ...
- 2014.12.06 ASP.NET 三级联动,添加员工,修改员工
(一)三级联动 要实现的效果: 代码: MyDBDataContext context = new MyDBDataContext(); protected void Page_Load(object ...
- 转:extjs 添加loading状态的三种解决办法:
extjs 添加loading状态的三种解决办法: 方法一: //materialGrid 指需要显示loading状态的控件id var o=Ext.getCmp('materialGrid'); ...
- Springboot:员工管理之添加员工(十(7))
构建员工添加请求 com\springboot\controller\EmployeeController.java /*调转到员工添加页 携带部门信息 restful风格*/ @GetMapping ...
- MySQL InnoDB索引介绍以及在线添加索引实例分析
引言:MySQL之所以能成为经典,不是没有道理的,B+树足矣! 一.索引概念 InnoDB引擎支持三种常见的索引:B+树索引,全文索引和(自适应)哈希索引.B+树索引是传统意义上的索引,构造类似二叉树 ...
- JavaScript实现动态添加员工
html代码: <div id="empAdd"> <fieldset> <legend><strong>添加员工</stro ...
随机推荐
- paxos 实现
原文地址:http://rdc.taobao.com/blog/cs/?p=162 本文主要介绍zookeeper中zookeeper Server leader的选举,zookeeper在选举lea ...
- 教你50招提升ASP.NET性能(七):总是在服务器端执行验证
(13)Always perform validation on the server as well 招数13: 总是在服务器端执行验证 This isn’t exactly a performan ...
- iOS开发笔记系列-基础3(多态、动态类型和动态绑定)
多态:相同的名称,不同的类 使不同的类共享相同方法名称的能力成为多态.它让你可以开发一组类,这组类中的每一个类都能响应相同的方法名.每个类的定义都封装了响应特定方法所需要的代码,这使得它独立于其他的类 ...
- 什么是IDOC,以及IDOC的步骤
创建IDOC: 第一步:WE31 创建IDOC所包含的字段. 第二步:WE30 创建IDOC 把Segment分配给IDOC 第三步:WE81 创建信息类型 第四步:WE82 把 ...
- iOS开发——高级技术&生成二维码
生成二维码 因为项目里需要新增个功能,该功能用到了二维码技术.于是我便查阅了资料,先学习了二维码的生成. 我们使用libqrencode库来生成二维码.下载地址http://download.cs ...
- 电商ERP常见功能模块
电商ERP是适用企业卖家的专业电子商务ERP,支持淘宝.天猫.京东.1688.当当.苏宁.拍拍.唯品会.亚马逊.独立B2C等多网络销售渠道:也包括 异地多仓..货位管理.智能配货等专业的WMS(仓 ...
- A+B Problem III
描述 求A+B是否与C相等. 输入 T组测试数据. 每组数据中有三个实数A,B,C(-10000.0<=A,B<=10000.0,-20000.0<=C<=20000.0) 数 ...
- 安装MySQL在最后的start service停住了解决方法
今天自己安装mysql在start service卡住了,原来是以前安装过,但是没有删干净.通过下面的方法解决了,特分享下 由于我的MySQL不知道什么原因突然打不开了并报了个10061的错,查了下原 ...
- mapping 详解3(Meta-Fields)
文档标识相关元数据字段 _index 当执行多索引查询时,可能需要添加特定的一些与文档有关联的索引的子句. _index 字段可以用在 term.terms 查询,聚合(aggregations)操作 ...
- 关于SWT/JFace的事件模型的四种方式
事件的4种写法 1.匿名内部类方式的写法 2.命名内部类的写法 3.外部类写法 4.实现监听接口的写法 第一种用匿名内部类的方法: public class HelloWorld { private ...