formpanel kann so verwendet werden, das Beispiel auf der API:
var panel =Ext.create('Ext.form.Panel', {
title: 'Simple Form',
bodyPadding: 5,
width: 350,
// wird AJAX übergeben. Senden Sie die Anfrage an diese URL
//url: 'save-form.php',
// Die Formularfelder. Die Felder werden vertikal angeordnet und nehmen die gesamte Breite ein
Layout: 'anchor',
defaults: {
anchor: '100%'
},
// Die Felder
defaultType: 'textfield',
items: [{
fieldLabel: 'First Name',
name: 'first',
allowBlank: false
},{
fieldLabel: 'Last Name',
name: 'last ',
allowBlank : false
}],
// Schaltflächen zum Zurücksetzen und Speichern
Schaltflächen: [{
text: 'Zurücksetzen',
handler: function( ) {
this.up('form').getForm().reset();
}
}, {
text: 'Speichern',
formBind: true, // erst aktiviert, wenn das Formular gültig ist
disabled: true,
handler: function() {
var form = this.up('form').getForm();
if (form.isValid ()) {
form.submit({
success: function(form, action) {
Ext.Msg.alert('Save Successful', action.result.msg);
},
Fehler: function(form, action) {
Ext.Msg.alert('Operation failed', action.result.msg);
}
}
}],
renderTo: Ext.getBody()
);
Wenn man sich die API ansieht, hat das Formpanel keine URL-Konfiguration und keine Funktion zum Abrufen der API . . Ich denke, es sollte ein Parameter der übergeordneten Klasse des Formpanels sein. .
Später habe ich einen Blick auf ext.form.basic geworfen, und tatsächlich gibt es dort ein URL-Konfigurationselement. .
In Ext speichert FormPanel keine Formulardaten. Beim Absenden eines Formulars müssen Sie das BasicForm im aktuellen FormPanel zum Absenden abrufen Objekt kann zum Senden des Formulars verwendet werden
Da im Projekt zwei Komponenten verwendet werden müssen, besteht der einzige Unterschied zwischen diesen beiden Komponenten darin, dass die übermittelte URL unterschiedlich ist, daher habe ich die URL bei der Definition nicht definiert die Komponente. Dieses Element
und fügen Sie dann verschiedene URLs hinzu, wenn die Komponente zu verschiedenen Containern hinzugefügt wird. Nehmen Sie das obige Beispiel als Beispiel
, wo nötig
Code kopieren
Der Code lautet wie folgt: panel.getForm().url='../LogSelectServlet';//In different Orten können wie folgt unterschiedliche URLs zugewiesen werden Diese Methode ist eine gute Möglichkeit, Komponenten wiederzuverwenden.