我希望能够动态地向表单添加不同的字段,然后将它们提交给服务器。这就是我这样做的方式:
var frm = this.up('window').down('form');
for(var i = 0; i < 3; i++){
var el = Ext.create('Ext.form.field.Text',{
xtype:'textfield',
name:'field_' + i
});
frm.items(add);
}
alert(frm.getForm().getFields().length); // alerts "0";
这真的很有趣,因为我甚至在表单中看到了三个新字段 - 它们有唯一的ID,名称等等。但是由于某些疯狂的原因frm.getForm().getFields().length
给我零,即使我推迟了2 ,5或无穷大秒。发生了什么???
答案 0 :(得分:1)
尝试:
frm.add(el);
而不是:
frm.items(add);
答案 1 :(得分:0)
服务器端可能会有一些保护(为了防范XSS)
我在使用Drupal(Apache)时遇到过相同的问题,但我确信它是许多框架/服务器的通用实践。