Ext.FormPanel 学习示例

2024-03-24 00:08
文章标签 学习 示例 ext formpanel

本文主要是介绍Ext.FormPanel 学习示例,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

的FormPanel,也是继承panel组件的使用。
首先弄清楚这个问题,创建的时候: 

// 查看源代码便知,两种方法是一样的
Ext.form.FormPanel  =  Ext.FormPanel;

我们还是从最简单的代码实例开始吧:

<!-- html代码 -->
< body >
< div  id ="form1" ></ div >
</ body >

 

复制代码
// js代码
var  form1  =   new  Ext.form.FormPanel({
       width:
350 ,
       frame:
true , // 圆角和浅蓝色背景
       renderTo: " form1 " , // 呈现
       title: " FormPanel " ,
       bodyStyle:
" padding:5px 5px 0 " ,
       items:[
          {
            fieldLabel:
" UserName " , // 文本框标题
            xtype: " textfield " , // 表单文本框
            name: " user " ,
            id:
" user " ,
            width:
200
          },
          {
            fieldLabel:
" PassWord " ,
            xtype:
" textfield " ,
            name:
" pass " ,
            id:
" pass " ,
            width:
200
          }
       ],
       buttons:[{text:
" 确定 " },{text: " 取消 " ,handler: function (){alert( " 事件! " );}}]
    });
复制代码


都是通过items属性参数把表单元素添加到这个表单中。
我们发现两个文本框的类型和狂度是一样的,我们还可以把items里面的相同项提取出来,以简化代码:

复制代码
// 简化代码,和上面的代码效果一样
var  form1  =   new  Ext.form.FormPanel({
       width:
350 ,
       frame:
true ,
       renderTo:
" form1 " ,
       title:
" FormPanel " ,
       bodyStyle:
" padding:5px 5px 0 " ,
       defaults:{width:
200 ,xtype: " textfield " },//*****简化****//
       items:[
          {
            fieldLabel:
" UserName " ,
            
// xtype:"textfield",
            name: " user " ,
            id:
" user " ,
            
// width:200
          },
          {
            fieldLabel:
" PassWord " ,
            
// xtype:"textfield",
            name: " pass " ,
            id:
" pass " ,
            inputType:
" password " ,
            
// width:200
          }
       ],
       buttons:[{text:
" 确定 " },{text: " 取消 " ,handler: function (){alert();}}]
    });
复制代码

关于inputType,参数如下:

// input的各种类型(这个大家都知道,就只列了几个典型的)
radio
check
text(默认)
file
password等等

关于FormPanel的配置参数,请主要参考panel的参数,这里列举另外两个:

1 .labelAlign:fieldlabel的排列位置,默认为 " left " ,其他两个枚举值是 " center " , " right "
2 .labelWidth:fieldlabel的占位宽
3 .method: " get " " post "
4 .url: " 提交的地址 "

5 .submit:提交函数  // 稍后我们一起详细分析

因为内容太多,我们先看一个例子。
1.FormPanel的fieldset应用

复制代码
// 把前面代码重写items属性
items:[
          {
            xtype:
' fieldset ' ,
            title: 
' 个人信息 ' ,
            collapsible: 
true ,
            autoHeight:
true ,
            width:
330 ,
            defaults: {width: 
150 },
            defaultType: 
' textfield ' ,
            items :[{
                    fieldLabel: 
' 爱好 ' ,
                    name: 
' hobby ' ,
                    value: 
' www.cnblogs.com '
                },{
                    xtype:
" combo " ,
                    name: 
' sex ' ,
                    store:[
" " , " " , " 保密 " ],//数据源为一数组
                    fieldLabel:
" 性别 " ,
                    emptyText:
' 请选择性别. '
                }]
            }
       ]
复制代码


这里的combox组件只是简单的演示,具体还是要深入了解,我们会在以后的内容中详细探讨。
2.关于xtype的类型,在extjs的form表单(其他的请参考api)中已经定义的有:

复制代码
Form components
---------------------------------------
form             Ext.FormPanel
checkbox         Ext.form.Checkbox
combo            Ext.form.ComboBox
datefield        Ext.form.DateField
field            Ext.form.Field
fieldset         Ext.form.FieldSet
hidden           Ext.form.Hidden
htmleditor       Ext.form.HtmlEditor
label            Ext.form.Label
numberfield      Ext.form.NumberField
radio            Ext.form.Radio
textarea         Ext.form.TextArea
textfield        Ext.form.TextField
timefield        Ext.form.TimeField
trigger          Ext.form.TriggerField
复制代码

不早了,FormPanel还有很多的东西要了解,但是今天不能再讲了,太多了,大家都没有兴致看下去,明天继续。

这篇关于Ext.FormPanel 学习示例的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/839944

相关文章

Python中logging模块用法示例总结

《Python中logging模块用法示例总结》在Python中logging模块是一个强大的日志记录工具,它允许用户将程序运行期间产生的日志信息输出到控制台或者写入到文件中,:本文主要介绍Pyt... 目录前言一. 基本使用1. 五种日志等级2.  设置报告等级3. 自定义格式4. C语言风格的格式化方法

Spring 中的切面与事务结合使用完整示例

《Spring中的切面与事务结合使用完整示例》本文给大家介绍Spring中的切面与事务结合使用完整示例,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录 一、前置知识:Spring AOP 与 事务的关系 事务本质上就是一个“切面”二、核心组件三、完

sky-take-out项目中Redis的使用示例详解

《sky-take-out项目中Redis的使用示例详解》SpringCache是Spring的缓存抽象层,通过注解简化缓存管理,支持Redis等提供者,适用于方法结果缓存、更新和删除操作,但无法实现... 目录Spring Cache主要特性核心注解1.@Cacheable2.@CachePut3.@Ca

QT Creator配置Kit的实现示例

《QTCreator配置Kit的实现示例》本文主要介绍了使用Qt5.12.12与VS2022时,因MSVC编译器版本不匹配及WindowsSDK缺失导致配置错误的问题解决,感兴趣的可以了解一下... 目录0、背景:qt5.12.12+vs2022一、症状:二、原因:(可以跳过,直奔后面的解决方法)三、解决方

MySQL中On duplicate key update的实现示例

《MySQL中Onduplicatekeyupdate的实现示例》ONDUPLICATEKEYUPDATE是一种MySQL的语法,它在插入新数据时,如果遇到唯一键冲突,则会执行更新操作,而不是抛... 目录1/ ON DUPLICATE KEY UPDATE的简介2/ ON DUPLICATE KEY UP

Python中Json和其他类型相互转换的实现示例

《Python中Json和其他类型相互转换的实现示例》本文介绍了在Python中使用json模块实现json数据与dict、object之间的高效转换,包括loads(),load(),dumps()... 项目中经常会用到json格式转为object对象、dict字典格式等。在此做个记录,方便后续用到该方

MySQL分库分表的实践示例

《MySQL分库分表的实践示例》MySQL分库分表适用于数据量大或并发压力高的场景,核心技术包括水平/垂直分片和分库,需应对分布式事务、跨库查询等挑战,通过中间件和解决方案实现,最佳实践为合理策略、备... 目录一、分库分表的触发条件1.1 数据量阈值1.2 并发压力二、分库分表的核心技术模块2.1 水平分

SpringBoot请求参数传递与接收示例详解

《SpringBoot请求参数传递与接收示例详解》本文给大家介绍SpringBoot请求参数传递与接收示例详解,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋... 目录I. 基础参数传递i.查询参数(Query Parameters)ii.路径参数(Path Va

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

Redis实现高效内存管理的示例代码

《Redis实现高效内存管理的示例代码》Redis内存管理是其核心功能之一,为了高效地利用内存,Redis采用了多种技术和策略,如优化的数据结构、内存分配策略、内存回收、数据压缩等,下面就来详细的介绍... 目录1. 内存分配策略jemalloc 的使用2. 数据压缩和编码ziplist示例代码3. 优化的