加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

表单 – Extjs无法动态添加/删除formpanel中的字段

发布时间:2020-12-14 18:39:55 所属栏目:资源 来源:网络整理
导读:我有一个表格面板,使用表格布局来显示表格.我需要添加一些功能来添加/删除一组组件. 添加按钮应在现有元素下添加一行新组件.删除按钮应删除最后添加的行. formpanel可以添加一个新字段,但它出现在按钮下方,并且表单的宽度没有增加(参见下面的屏幕截图).我已
我有一个表格面板,使用表格布局来显示表格.我需要添加一些功能来添加/删除一组组件.

添加按钮应在现有元素下添加一行新组件.删除按钮应删除最后添加的行.

formpanel可以添加一个新字段,但它出现在按钮下方,并且表单的宽度没有增加(参见下面的屏幕截图).我已尝试使用insert和add函数,但两者都具有相同的效果.

有谁知道如何:
1)我可以在下一行添加一系列组件吗?
2)我如何删除下一行.

部分formPanel代码&按钮代码:

![SearchForm = Ext.extend(Ext.FormPanel,{
     id: 'myForm',title: 'Search Form',frame:true,waitMessage: 'Please wait.'
     //,labelWidth:80,initComponent: function() {    
         var config = {                 
            items: [{
                layout:{
                    type:'table',columns:5
                },buttonAlign:'center',defaults:{
                    //width:150,//bodyStyle:'padding:100px'
                    style:'margin-left:20px;'
                },items:[//row 1
                       {                    
                            xtype: 'label',name: 'dateLabel',cls: 'f',text: "Required:"                   
                        },{
                            xtype: 'container',layout: 'form',items: {
                                xtype: 'datefield',fieldLabel: "From Date",value: yesterday,width: 110,id: 'date1'                                                   
                            }
                        }][1]
buttons: [{
                            text: 'Add More Criteria (max 10 items)',id: "addBtn",scope: this,handler: function(){
                                alert('hi');
                                /*this.items.add({
                                     xtype : 'textfield',fieldLabel : 'Extra Field',name : 'yourName',id : 'yourName'
                                 }); */
                                this.insert(4,{
                                        xtype: 'textfield',id: 'input20',//hideLabel: true,width: 180,fieldLabel: 'hi'
                                    });
                                this.doLayout();
                            }
                }

解决方法

最简单的方法是在表单中使用 fieldset来保存所有“行”,然后使用fielset.add()向此字段集添加一行

(您的’行’可以是包含所有字段的另一个字段集)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读