formpanel能够这样使用,api上的样例:
var panel=Ext.create('Ext.form.Panel', { title: 'Simple Form', bodyPadding: 5, width: 350, // 将会通过 AJAX 请求提交到此URL //url: 'save-form.php', // 表单域 Fields 将被竖直排列, 占满整个宽度 layout: 'anchor', defaults: { anchor: '100%' }, // The fields defaultType: 'textfield', items: [{ fieldLabel: 'First Name', name: 'first', allowBlank: false },{ fieldLabel: 'Last Name', name: 'last', allowBlank: false }], // 重置 和 保存 按钮. buttons: [{ text: '重置', handler: function() { this.up('form').getForm().reset(); } }, { text: '保存', formBind: true, //only enabled once the form is valid disabled: true, handler: function() { var form = this.up('form').getForm(); if (form.isValid()) { form.submit({ success: function(form, action) { Ext.Msg.alert('保存成功', action.result.msg); }, failure: function(form, action) { Ext.Msg.alert('操作失败', action.result.msg); } }); } } }], renderTo: Ext.getBody()});再看API,formpanel居然没有url的配置,也没有获得api的函数。。想来应该是formpanel的父类的參数。
。
后来去看了看ext.form.basic,果然有url配置项。。
在Ext中FormPanel并中并不保存表单数据,当中的数据是由BasicForm保存,在提交表单的时候须要获取当前FormPanel中的BasicForm来进行提交.
在获取BasicForm对象后便可进行表单的提交操作
由于要在项目中要用到2个组件。这2个组件唯一的区别是提交的url不一样,故我在定义组件时未定义url这一项
然后在组件加入到不同容器时顺便把不同的url也给上,以上面那个样例为例
在须要的地方
panel.getForm().url='../LogSelectServlet';//在不同的地方能够像这样赋值不同的URL这样的方法对于组件的重用是一个不错的方法。。