代码如下:

<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 可自动伸缩的更多相关文章

  1. FineUI第十二天---锚点布局

    锚点布局的典型结构: <x:Panel Layout="Anchor" runat="server">              <Items ...

  2. 无废话ExtJs 入门教程十六[页面布局:Layout]

    无废话ExtJs 入门教程十六[页面布局:Layout] extjs技术交流,欢迎加群(201926085) 首先解释什么是布局: 来自百度词典的官方解释:◎ 布局 bùjú: [distributi ...

  3. Windows 8实例教程系列 - 布局控制

    原文:Windows 8实例教程系列 - 布局控制 与传统应用类似,Windows store应用允许开发人员通过布局控件管理应用UI. 本篇将讨论Windows8布局设计控制. Windows 8布 ...

  4. asp.net中生成缩略图并添加版权实例代码

    这篇文章介绍了asp.net中生成缩略图并添加版权实例代码,有需要的朋友可以参考一下 复制代码代码如下: //定义image类的对象 Drawing.Image image,newimage; //图 ...

  5. 2014.12.06 ASP.NET 三级联动,添加员工,修改员工

    (一)三级联动 要实现的效果: 代码: MyDBDataContext context = new MyDBDataContext(); protected void Page_Load(object ...

  6. 转:extjs 添加loading状态的三种解决办法:

    extjs 添加loading状态的三种解决办法: 方法一: //materialGrid 指需要显示loading状态的控件id var o=Ext.getCmp('materialGrid'); ...

  7. Springboot:员工管理之添加员工(十(7))

    构建员工添加请求 com\springboot\controller\EmployeeController.java /*调转到员工添加页 携带部门信息 restful风格*/ @GetMapping ...

  8. MySQL InnoDB索引介绍以及在线添加索引实例分析

    引言:MySQL之所以能成为经典,不是没有道理的,B+树足矣! 一.索引概念 InnoDB引擎支持三种常见的索引:B+树索引,全文索引和(自适应)哈希索引.B+树索引是传统意义上的索引,构造类似二叉树 ...

  9. JavaScript实现动态添加员工

    html代码: <div id="empAdd"> <fieldset> <legend><strong>添加员工</stro ...

随机推荐

  1. cocos2d-x ScrollView、TableView

    转自:http://codingnow.cn/cocos2d-x/1024.html 在游戏和应用中经常要实现左右滑动展示游戏帮助.以列表显示内容的UI效果,就像android中的Gallery和Li ...

  2. 【转载】Android Studio 设置内存大小及原理

    http://www.cnblogs.com/justinzhang/p/4274985.html http://tsroad.lofter.com/post/376316_69363ae Andro ...

  3. 获取WMI硬件清单

    WMI服务能够报告详细的硬件信息.通常,每个硬件都来自它们自己的WMI代理类.但是要找出这些硬件类的名字是不容易. 所有硬件类都在同一个WMI根下面,你可以在根类查询所有的硬件: Get-WmiObj ...

  4. IIS连接数

    IIS连接数,也叫IIS并发数(Current Connections),是指同一时间内,有多少个对服务器的请求 一般情况下一个浏览器会占用2个IIS连接 同一个浏览器(IE.Firefox等)窗口中 ...

  5. nonce和timestamp在Http安全协议中的作用

    前段时间给客户网站做新浪微博账号登录功能,对OAuth协议以及相关的一些安全协议做了一些研究,顺便就记录一下学习心得吧.在这里就不打算具体讲OAuth的协议流程了,而是针对OAuth请求头里的nonc ...

  6. Java开发手冊 Java学习手冊教程(MtJava开发手冊)

    本文档的版权归MtJava文档小组全部,本文档及其描写叙述的内容受有关法律的版权保护,对本文档内容的不论什么形式的非法复制.泄露或散布.将导致对应的法律责任. MtJava仅仅是一个学习Java的简化 ...

  7. Oracle 11g系统自己主动收集统计信息的一些知识

    在11g之前,当表的数据量改动超过总数据量的10%,就会晚上自己主动收集统计信息.怎样推断10%.之前的帖子有研究过:oracle自己主动统计信息的收集原理及实验.这个STALE_PERCENT=10 ...

  8. android学习日记20--连接组件之Intent和IntentFilter

    上次刚了解完Android的四大组件,现在学习组件间通信的Intent和IntentFilter 一.Intent 1.简述 Intent(意图)在应用程序运行时连接两个不同组件,是一种运行时的绑定机 ...

  9. 【jQuery插件】用jQuery Masonry快速构建一个pinterest网站布局(转)

    [jQuery插件]用jQuery Masonry快速构建一个pinterest网站布局 时间:2011年03月21日作者:愚人码头查看次数:29,744 views评论次数:25条评论 前段时间领导 ...

  10. 文件I/O(不带缓冲)之open函数

    调用open函数可以打开或创建一个文件. #include <fcntl.h> int open( const char *pathname, int oflag, ... /* mode ...