0
Liferayポートレット内にExt.form.panelを作成しました。電子メール、パスワードのテキストボックスと保存ボタンを持つシンプルなフォームです。 liferayポートレットを最小化および復元するとき。 Extjsフォーム要素は2回レンダリングされます。liferayの最小化と復元ポートレットはフォームパネルを2回レンダリングします
克服するためにこの問題についてお手伝いをしてください。
ありがとうございます。以下は
<div id="configPanel"></div>
<script type="text/javascript">
Ext.onReady(function() {
var addUserForm = Ext.create('Ext.form.Panel', {
renderTo: "configPanel",
bodyStyle: 'padding: 5px 5px 0 5px;',
defaults: {
xtype: 'textfield',
anchor: '100%',
},
items: [{
xtype: 'textfield',
name: 'url',
alias:'ac-url',
id:'ac-field-url',
itemId:'configPortlet_URL',
fieldLabel: 'URL',
labelSeparator:'',
allowBlank: false,
vtype: 'url',
emptyText:'[Required e.g. http://google.com]',
listeners: {
//specialkey: submitOnEnter
}
},{
xtype: 'textfield',
name: 'password',
alias:'ac-password',
id:'ac-field-password',
fieldLabel: 'Password',
labelSeparator:'',
inputType: 'password',
allowBlank: false,
enforceMaxLength: true,
maxLength: 256,
emptyText: '[Required]',
listeners: {
//specialkey: submitOnEnter
}
}, {
xtype: 'button',
text: 'Random',
tooltip: 'Generate a random password',
style: 'margin-left: 4px;',
flex: 0,
handler: function() {
//this.prev().setValue(password(8, false));
//this.prev().focus()
}
}],
buttons: [{
id: 'saveBtn',
itemId: 'saveBtn',
text: 'Submit',
handler: function() {
this.up('form').getForm().submit();
}
},{
text: 'Cancel',
handler: function() {
this.up('form').getForm().reset();
}
}],
submit: function() {
var currentForm = this.owner.form;
if (currentForm.isValid()) {
// var newSomething = Ext.create('Something', currentForm.getFieldValues());
}
}
});
addUserForm.show();
});
</script>