2016-09-29 10 views
0

Gibt es eine Möglichkeit, den Inhalt eines Formulars wie ein Feldset in HTML zu aktivieren/deaktivieren? Ich habe versucht, die Eigenschaft "enable" "editierbare" des Formulars ändern, aber es funktioniert nichtDeaktivieren/Aktivieren eines Formularinhalts

+0

'SimpleForm' hat keine' enable' Eigenschaft. – Dopedev

+0

Sie können versuchen, die Eigenschaften aller Formularelemente an einen einzelnen Pfad in einem Modal zu binden, z. B. mein Formular enthält ein Eingabefeld - var oInput = new sap.m.Input ({enable: {oEnableModel>/enable}) }); Das oEnableModel in Component.js - var oEnableModel = new sap.ui.model.json.JSONModel ({enable: true}); this.setModel (oEnableModel, 'oEnableModel'); Mit einem Klick auf die Schaltfläche können Sie die Eigenschaft enable auf false setzen und alle Feldelemente werden deaktiviert. –

+0

@Dopedev sorry, "editierbare" – Guto

Antwort

2

Unten Code ist genug, um alle Felder in SimpleForm deaktivieren.

onAfterRendering: function(){ 
    var formId = this.getView().byId("SimpleForm").getId(); 
    $("#"+ formId +" *").css({"pointer-events": "none"}); 
} 

Sehen Sie es in Aktion here.

Update:

Die Einstellung der editable Eigenschaft hat keinen Einfluss auf die editierbare Funktionalität des Inhalts der Form.

editable Eigenschaft tut das Formular, wie der Name vermuten lässt. In der Tat ist es verwirrend.

Es setzt die gleiche line-height für die Label wie die Felder wie Input, Select, ComobBox usw., wenn true (bedeutet, wenn Sie das Formular in editierbaren Modus ist). Wenn Sie es auf false setzen, wird Label und entsprechendes Feld falsch ausgerichtet aussehen.

Verwandte Themen