gpt4 book ai didi

forms - Extjs 无法动态添加/删除表单面板中的字段

转载 作者:行者123 更新时间:2023-12-04 12:12:32 25 4
gpt4 key购买 nike

我有一个表单面板,它使用表格布局来显示表单。我需要添加功能来添加/删除一组组件。

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

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();
}
}

form

最佳答案

最简单的方法是拥有一个 fieldset在表单中保存所有“行”,然后在此 fieldset 中添加一行使用 fielset.add()
(您的“行”可以是包含所有字段的另一个字段集)

关于forms - Extjs 无法动态添加/删除表单面板中的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7481919/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com