ExtJs学习(二)(表单)

Ext.onReady(function{
  var jj_form = new Ext.FormPanel({
  url : ‘jj_form_submit.java‘,
  renderTo : document.body,
  frame : true,
  title : ‘formtest_jj‘,
  width : 250,
  items : [{
    xtype : ‘textfield‘,
    fieldlabel : ‘username‘,
    name : ‘username‘
},{
    xtype : ‘textfield‘,
    fieldlabel : ‘password‘,
    name " ‘password‘
},{
    xtype : ‘datafield‘,
    fieldlabel : ‘data‘,
    name : data
}    
]
});
});

这个实际上就是一个表单对象,其中xtype表示的是表单控件的类型,类型有:textfield,timefield,datafield,numberfield,combo,textarea.

表单校验功能:

  allowBlank : false ;不允许空。
  disabledDays : [1,2,3,4,5] 不允许选择星期一,二,三,四,五。一定要记得0代表Sunday
  其实vtype这种内置校验也是可以进行检验的,比如:vtype : ‘alpha‘ 则表示输入只能匹配文字字符,还有许多其他的约束条件,可以通过论坛中查找获取到。

显示错误的方式:  
  Ext.onReady(function(){
  Ext.QuickTips.init() //通常是放在第一行,通过一个气球来提示错误信息
  });

自定义检验,设定自己的vtype:
  Ext.form.VTypes[‘nameVal‘] = /^[A-Z][A-Za-z\-] + [A-Z][A-Za-z\-] + $/;
  Ext.form.VTypes[‘nameMask‘] = /[A-Za-z\-]/;
  Ext.form.VTypes[‘nameText‘] = ‘Invalid name!‘;
  Ext.form..VTypes[‘name‘] = function(v){
    return Ext.form.VTypes[‘nameVal‘].test(v);
}

单选按钮(radio button),复选框(check boxes)和组合框(ComboBox)

radio button : {
  xtype : ‘radio‘,
  fieldlabel : ‘Color‘.
  name : ‘color‘,
  boxlabel : ‘White‘
}.{
  xtype : ‘radio‘,
  name : ‘color‘,
  hideLabel : false,
  boxlabel : ‘Black‘
  labelSpearator : ‘‘
}

check box : {
  xtype : ‘checkbox‘,
  fieldlabel : ‘Are you sure‘,
  name : ‘Are you sure‘
}

comboBox :
首先要定义一个数据集合,其中data可以有很多种的形式,这里我们选择的是SimpleStore。

var data_store = new Ext.data.SimpleStore(){
  fields : [‘id‘, ‘username‘],
  name : [[1, aichengqi], [2, chenli],[3, yuguoxin]]
})
{
  xtype : ‘combo‘,
  fieldlabel : ‘user‘,
  name : ‘user‘,
  mode : ‘local‘,
  store : ‘username‘,
  displayfield : ‘username‘,
  width : 120
}

数据库驱动的ComboBox

这里是用PHP语言编写的如何获取JSON数据的方式;(由于涉及到了PHP的函数问题,就没有过多研究了)

之后我们使用JSON Reader来实现远程数据的功能;

var remote_data = new Ext.data.Store({
  reader : new Ext.data.JsonReader({
    fields : [id, username],
    root : ‘rows‘
}),
  proxy : new Ext.data.HttpProxy({
    url : data/username.php
}),
  autoLoad : true
});
remote_data.load();

文本域(TextArea)和html编辑器(html Editor)

TextArea :
{
  xtype : ‘textarea‘,
  fieldlabel : ‘comment‘,
  name : ‘commment‘,
  labelSeparator : ‘‘,
  hideLabel : true,
  height : 100,
  anchor : ‘100%‘
}

html Dditor 和上面的一样 :
{
  xtype : ‘htmleditor‘,
  fieldlabel : ‘editor‘,
  name : ‘editor‘,
  hideLabel : true,
  labelSeparator,
  height : 100,
  anchor : ‘100%‘
}

ExtJs学习(二)(表单)

时间: 2024-08-30 00:49:11

ExtJs学习(二)(表单)的相关文章

Bootstrap基础学习(二)—表单

一.表单 1.基本格式 <!-- 基本格式 --> <form> <div class="form-group"> <label>姓名 </label> <input type="text" class="form-control" placeholder="请输入您的姓名"/> </div> <div class="form-

bootstrap基础学习【表单含按钮】(二)

<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>bootstrap基础学习[表单](二)</title> <link rel="stylesheet" href="css/bootstrap.min.css" /> </head> <body style="padd

基于Extjs的web表单设计器 第七节——取数公式设计之取数公式的使用

基于Extjs的web表单设计器 基于Extjs的web表单设计器 第一节 基于Extjs的web表单设计器 第二节——表单控件设计 基于Extjs的web表单设计器 第三节——控件拖放 基于Extjs的web表单设计器 第四节——控件拖放 基于Extjs的web表单设计器 第五节——数据库设计 基于Extjs的web表单设计器 第六节——界面框架设计 基于Extjs的web表单设计器 第七节——取数公式设计之取数公式定义 基于Extjs的web表单设计器 第七节——取数公式设计之取数公式的使用

基于Extjs的web表单设计器 第五节——数据库设计

这里列出表单设计器系列的内容,6.7.8节的内容应该在春节后才有时间出了.因为这周末就请假回老家了,准备我的结婚大事.在此提前祝大家春节快乐! 基于Extjs的web表单设计器 基于Extjs的web表单设计器 第一节 基于Extjs的web表单设计器 第二节——表单控件设计 基于Extjs的web表单设计器 第三节——控件拖放 基于Extjs的web表单设计器 第四节——控件拖放 基于Extjs的web表单设计器 第五节——数据库设计 基于Extjs的web表单设计器 第六节——界面框架设计

Extjs的form表单自动装载数据(通过Ext.data.Model的代理加载数据)

在做项目的时候遇到一个问题,以前双击grid页面一行数据的时候,会吧双击这一行的数据自动加载到双击的页面(Ext的弹出框),可以通过this.down(''form).getForm().loadRecord(record)来自动加载,可是现在有一个需求就是双击grid一行弹出一个新的浏览器页面(不是ext的弹出框,通过window.open()实现),只能把双击的id传到页面,再重新查数据手动赋值,如果一个页面字段很多,一个一个赋值是很辛苦的,所以就想能不能自动装载数据 通过长时间研究发现,t

Knockout学习之表单绑定器(上)

表单绑定器 “click”绑定 Click 绑定器可以将javascript函数绑定到指定的dom元素,并且再该元素被点击时将触发绑定的函数,大多数情况下都会使用button.input和a元素,当然其他可见的dom元素也是一样可以的.下面我们就简单的举一个例子: 1 <div> 2 你已经点击了<span data-bind="text:numberOfClicks" ></span> 3 <button data-bind="cl

Knockout学习之表单绑定器(下)

“hasFocus”绑定 hasFocus绑定器会将DOM元素的焦点状态与视图模型中的属性相关联,当你设置视图模型中关联的属性为true或false后,将能够设置关键的DOM元素是否获得焦点. 比如下面的例子将会演示如何使用通过代码设置焦点,并且当关联的标签获得焦点后显示一段文本: 1 <div> 2 <input type="text" data-bind="hasfocus: focusState" /> 3 <button typ

extjs中form表单提交成功、失败的响应信息

类Ext.form.Action.Submit 处理表单Form数据和返回的response对象的类. 该类的实例仅在表单Form{@link Ext.form.BasicForm#submit 提交}的时候创建. 返回的数据包必须包含一个 boolean 类型的success属性,还有可选地,一个含有无效字段的错误信息的属性 A response packet may contain: ·        success property : Boolean - required. ·     

基于Extjs的web表单设计器 第六节——界面框架设计

基于Extjs的web表单设计器 基于Extjs的web表单设计器 第一节 基于Extjs的web表单设计器 第二节——表单控件设计 基于Extjs的web表单设计器 第三节——控件拖放 基于Extjs的web表单设计器 第四节——控件拖放 基于Extjs的web表单设计器 第五节——数据库设计 基于Extjs的web表单设计器 第六节——界面框架设计 基于Extjs的web表单设计器 第七节——取数公式设计 基于Extjs的web表单设计器 第八节——表单引擎设计 这一节我给大家介绍一下表单设

Django学习之表单(forms)

我们的博客现在已经实现了博客列表的查看,博客的查看.现在该是我们实现创建和更新博客的时候了. 要实现博客的创建和更新,我们需要学习Django表单的相关知识. 在处理表单的过程中,Django表单功能做了哪些工作呢? 传递数据的准备和重建 为数据创建HTML表单 从客户端接收和处理提交的表单和数据 Django Form类是系统的核心组件.在django中, 模型描述的是一个对象的逻辑架构,这绵行为,它显现给我们的方式.与此类似,Form类描述的是一个表单和决定它是如何工作和显示的. 一个模型类