鸣谢:http://www.shuyangyang.com.cn/jishuliangongfang/qianduanjishu/2013-12-10/188.html

----------------------------------------------------------------------------------------

一、我们来制作一个简单的表单:

代码:

/**
* ExtJS之制作表单——第一个表单
*/
Ext.onReady(function(){
var form = new Ext.form.FormPanel({
title:'第一个表单',
defaultType:'textfield', //默认表单里的控件类型
buttonAlign:'center', //按钮对齐方式
//Ext.panel.Panel-cfg-frame
frame:true, //True 为 Panel 填充画面,默认为false.
width:220,
/**
* Ext.form.FieldAncestor-cfg-fieldDefaults
* 如果指定此配置项, 则该对象内部的属性将会被应用到所有添加到此容器内的 Ext.form.Labelable 实例(e.g. Ext.form.field.Base 或者 Ext.form.FieldContainer),作为其默认值.
*/
fieldDefaults:{
labelAlign:'right', //文本对齐方式
labelWidth:70
},
items:[{ //内容
fieldLabel:'输入框'
}],
buttons:[{
text:'按钮'
}]
});
form.render("form");
});

二、第二个表单

代码:

/**
* ExtJS之制作表单——第二个表单
* 此js演示了在表单中嵌套子组件以及如何进行布局
*/
Ext.onReady(function(){ // HtmlEditor需要这个
Ext.QuickTips.init(); var form = new Ext.form.FormPanel({
buttonAlign: 'center',
width: 600,
title: 'form',
frame: true,
fieldDefaults: {
//Ext.form.Labelable-cfg-labelAlign
labelAlign: 'right', //控制fieldLabel的位置和对齐方式。
labelWidth: 70 //fieldLabel以像素为单位的宽度。
},
items: [{ //单个组件,或者是以数组形式定义的子组件集合 将会自动添加到容器中去
xtype: 'container',
/**
* Ext.layout.container.Column
* 这个布局用于在一个多列格式中创建结构化布局的布局样式, 每列可以用百分比或固定的宽度值来定义, 但允许高度根据内容而改变.
*/
layout: 'column',
items: [{
/**
* Ext.Component-cfg-columnWidth (4.2版本)
* Defines the column width inside column layout.
* Can be specified as a number or as a percentage.
*/
columnWidth:.7,//".7"即表示在"列布局"中的列宽占70%
xtype:'fieldset',
collapsible: true, //是否为可折叠
collapsed: false, //默认是否折叠
title: '单纯输入',
// autoHeight:true, //--
defaults: {width: 300}, //默认属性将会应用到所有的子组件上
defaultType: 'textfield',//当一个子项目通过一个原生的配置对象而不是一个组件的实例指定时, 在当前容器中创建子组件时使用的默认 xtype,默认为 'panel'。
items: [{
fieldLabel: '文本',
name: 'text'
},{
xtype: 'numberfield',
fieldLabel: '数字',
name: 'number'
},{
xtype:"combo",
fieldLabel: '选择',
name: 'combo',
store: new Ext.data.SimpleStore({ //-- ArrayStore
fields: ['value', 'text'],
data: [
['value1', 'text1'],
['value2', 'text2']
]
}),
displayField: 'text', //相关的数据域名称绑定到ComboBox。
valueField: 'value', //相关的数据值名称绑定到ComboBox。
mode: 'local', //--
emptyText:'请选择' //放置到空表单项中的默认文本(默认为null)。
},{
xtype: 'datefield',
fieldLabel: '日期',
name: 'date'
},{
xtype: 'timefield',
fieldLabel: '时间',
name: 'time'
},{
xtype: 'textarea',
fieldLabel: '多行',
name: 'textarea'
},{
xtype: 'hidden',
name: 'hidden'
}]
},{
xtype: 'container',
columnWidth:.3,
/**
* Ext.layout.container.Form
* 这个布局会将表单中所有的输入框纵向的依次的排列, 且宽度与容器宽度相等.
*/
layout:'form',
items:[{
xtype:'fieldset',
//Ext.form.FieldSet-cfg-checkboxToggle
//设置为 true 则在 控件组 组头处显示一个复选框,用来 收缩/展开 控件组.
checkboxToggle:true,
title: '多选',
// autoHeight:true,
defaultType: 'checkbox',
// hideLabels: true, //--
style: 'margin-left:10px;',//自定义风格规范适用于该组件的元素
//Ext.panel.AbstractPanel-cfg-bodyStyle
//用户自定义CSS样式被应用到panel的body元素上
// bodyStyle: 'margin-left:20px;',//无效
items: [{
boxLabel: '首先要穿暖', //一个可选的文本标签,它显示在checkbox的旁边。
name: 'check', //表单项名称。当使用form submit()方法其中包含这个表单项时,name作为参数名称。
value: '1', //表单项的初始化值
checked: true,//如果要让checkbox在渲染后初始化为选中的状态,设置为true。
width: 'auto' //此组件的宽度,以像素为单位。
},{
boxLabel: '然后要吃饱',
name: 'check',
value: '2',
checked: true,
width: 'auto'
},{
boxLabel: '房子遮风避雨',
name: 'check',
value: '3',
width: 'auto'
},{
boxLabel: '行路方便',
name: 'check',
value: '4',
width: 'auto'
}]
},{
xtype:'fieldset',
checkboxToggle:true,
title: '单选',
// autoHeight:true,
defaultType: 'radio',
// hideLabels: true, //--
style: 'margin-left:10px;',
// bodyStyle: 'margin-left:20px;', //无效
items: [{
boxLabel: '渴望自由',
name: 'rad',
value: '1',
checked: true,
width: 'auto'
},{
boxLabel: '祈求爱情',
name: 'rad',
value: '2',
width: 'auto'
}]
}]
}]
},{
xtype: 'container',
// layout: 'form',
/**
* Ext.layout.container.Anchor
* 这个布局将子元素的位置与父容器大小进行关联固定. 如果容器大小改变, 所有固定的子项将按各自的anchor 规则自动被重新渲染固定.
*/
layout :'anchor',
items: [{
labelAlign: 'top',
xtype: 'htmleditor', //提供一个轻量的HTML编辑器组件。
fieldLabel: '在线编辑器',
id: 'editor',
anchor: '100%', //此值为宽度值;
height: 200
}]
}],
buttons: [{
text: '保存'
},{
text: '读取'
},{
text: '取消'
}]
}); form.render("form"); });

后记:可惜的是,本博客做制作的两个表单不支持IE浏览器。

ExtJS4.2学习(16)制作表单(转)的更多相关文章

  1. Bootstrap学习笔记(二) 表单

    在Bootstrap学习笔记(一) 排版的基础上继续学习Bootstrap的表单,编辑器及head内代码不变. 3-1 基础表单 单中常见的元素主要包括:文本输入框.下拉选择框.单选按钮.复选按钮.文 ...

  2. SpringMVC学习系列 之 表单标签

    http://www.cnblogs.com/liukemng/p/3754211.html 本篇我们来学习Spring MVC表单标签的使用,借助于Spring MVC提供的表单标签可以让我们在视图 ...

  3. Flask基础(16)-->WTForms表单创建和简单验证

    Flask基础(16)-->WTForms表单创建和简单验证 前言:使用Flask_WTF需要配置参数SECRET_KEYCSRF_ENABLED是为了CSRF(跨站请求伪造)保护.SECRET ...

  4. AngularJS 1.2.x 学习笔记(表单校验篇)

    https://my.oschina.net/cokolin/blog/526911 摘要: 本文首发于 blog.csdn.net/vipshop_ebs/article/details/39472 ...

  5. 学习HTML5之表单

    HTML5 的标准已经定了,应该火了,或者已经火了.那么是不是可以学习一下呢? 目前h5的主场还是在手机端,pc还是受困于浏览器的兼容,主要是IE在拖后腿.所以这里侧重的是手机里面的表现. 先来看看表 ...

  6. [原创]java WEB学习笔记62:Struts2学习之路--表单标签:form,表单标签的属性,textfield, password, hidden,submit ,textarea ,checkbox ,list, listKey 和 listValue 属性,select ,optiongroup ,checkboxlist

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  7. Symfony2学习笔记之表单

    对于一个Web开发者来说,处理HTML表单是一个最为普通又具挑战的任务.Symfony2集成了一个Form组件,让处理表单变的容易起来.在这一节里,我们将从基础开始创建一个复杂的表单,学习表单类库中最 ...

  8. PHP再学习1——cURL表单提交、HTTP请求和响应分析

    1.前言 最近迷恋WEB方面的技术,虽然自己是一个嵌入式工程师,但是我深知若需要把传感器终端的数据推送至“平台”必然会和WEB技术打交道.在工作中发现嵌入式工程师喜欢 二进制形式的协议,例如MODBU ...

  9. ASP.NET MVC5 学习系列之表单和HTML辅助方法

    一.表单 (一)Action和Method特性 Action特性用以告知浏览器信息发往何处,因此,Action特性后面需要包含一个Url地址.这里的Url地址可以是相对的,也可以是绝对的.如下Form ...

随机推荐

  1. jquery_ajax

    一.调用 <script type="text/javascript" src="jquery-1.11.2.min.js"></script ...

  2. oracle怎么查看表字段的类型

    select column_name,data_type,DATA_LENGTH From all_tab_columns where table_name=upper('表名') AND owner ...

  3. Java多线程并发

    http://wangjianwei866.blog.163.com/blog/static/9295823201231665319314/ 基于以上网文,调整了一下格式,修改了一些标点和拼写错误. ...

  4. Java 简单算法--打印回文数字

    package cn.magicdu.algorithm; public class CircleNumber { public static void main(String[] args) { f ...

  5. ASP.NET 4.0 来了

    伴随着VS2010的公开测试,ASP.NET4.0也进入了我们的视线.ASP.NET4.0究竟给我们带来了什么,将在哪些方面提高我们的生产力? 在何时你需要使用ASP.NET4.0开发你的网站程序? ...

  6. java环境变量详解---找不到或无法加载主类

    默认安装在C:\ProgramFiles\Java\jdk1.7.0目录下环境变量配置为PATH=.;%JAVA_HOME%\binCLASSPATH=.;%JAVA_HOME%\lib\dt.jar ...

  7. 如何在Windows系统上用抓包软件Wireshark截获iPhone等网络通讯数据

    http://www.jb51.net/os/windows/189090.html 今天给大家介绍一种如何在Windows操作系统上使用著名的抓包工具软件Wireshark来截获iPhone.iPa ...

  8. 编译gd-2.0.35.tar.gz时报错:gd_png.c:16:53: error: png.h: No such file or directory

    编译gd-2.0.35.tar.gz时报错: gcc -DHAVE_CONFIG_H -I. -I. -I. -I/usr/local/freetype/include/freetype2 -I/us ...

  9. WebService简单介绍

    什么是Web Services 一直没有一个明确的答案,最近听了一个大牛讲WebService,顿时明了了,作个记录免得以后忘了. N年之前,各公司都在炒作SOA,不过现在已经没人再提了,现在都改叫W ...

  10. iss 防火墙

    控制面板\系统和安全\Windows 防火墙\允许的程序 如下图 将万维网服务(HTTP)打勾即可访问你的网站. 转自:http://bbs.pcbeta.com/viewthread-604506- ...