Zuerst habe ich diese Frage bereits gesehen: Kann ein magento adminhtml-Feld von mehr als einem Feld oder Wert abhängen? Es spricht über System- / Konfigurationsfelder, was ich nicht suche.
Ich versuche ein Formular im Magento-Backend zu erstellen. Ich habe ein Drop-down Dropdown mit den Werten 1, 2 und 3. Ich brauche das Feld X, das angezeigt wird, wenn ich 1 oder 2 wähle. Wie mache ich das?
Ich kann X abhängig von einem einzelnen Dropdown-Wert anzeigen, nicht für mehrere Werte.
So habe ich es gemacht:
%Vor% Dabei sind $x
und $dropdown
Variablen, die addField()
result
Sie können.
Weitere Felder :
Fügen Sie einfach weitere Abhängigkeiten hinzu:
Weitere Werte (gleiches Feld) :
Sie sollten eine Reihe von Werten übergeben:
Wenn $value1/$value2
Zahlen sind, ist es besser, sie in eine Zeichenfolge umzuwandeln oder sie könnte nicht richtig funktionieren:
Der Grund für dieses Problem kann in js/mage/adminhtml/form.js
in der Methode trackChange
aufgespürt werden. An einem Punkt sehen Sie diesen Code:
Sie sehen, dass im Fall valuesFrom[idFrom]
wird indexOf
verwendet, um zu überprüfen, ob das Feld angezeigt wird oder nicht, dies verursacht ein Problem, weil es einen Vergleich zwischen indexOf
und from.value
vornimmt enthält eine Zeichenkette, während wir im Array valuesFrom[idFrom]
ein Array von Zahlen haben ...
Dieses Problem tritt nicht bei einem einzelnen Wert auf, weil from.value != valuesFrom[idFrom]
nicht auf den Typ
Eine einfache Lösung wäre, jquery im Admin-Bereich zu verwenden.
%Vor%
Sie können jquery-Code schreiben, um Felder basierend auf dem ausgewählten Wert anzuzeigen / auszublenden.
Hoffe das hilft
Tags und Links magento