Liebes Forum,
ich suche nach einer Möglichkeit, bestimmte oder alle nicht als “required” markierten Felder im Checkout-Prozess auszublenden, wenn die Option “kein Kundenkonto anlegen” ausgewählt wird. Standardmäßig verschwindet beim setzen des Häkchens nur das Passwort-Eingabefeld. Ich möchte aber auch, dass z.B. das optionale Feld “Telefonnummer” in diesem Fall ausgeblendet wird.
Ich habe die datei “jquery.register.js” in /themes/Frontend/Responsive/frontend/_public/src/js gefunden. Dort findet sich folgender Abschnitt ab Zeile #311:
/**
* Checks the skip account checkbox.
* The account field set will be shown/hidden depending
* on the check state of the checkbox.
*
* @public
* @method checkSkipAccount
*/
checkSkipAccount: function () {
var me = this,
opts = me.opts,
$fieldSet = me.$accountFieldset,
isChecked = me.$skipAccount.is(':checked'),
requiredFields = $fieldSet.find(opts.inputSelector),
requiredMethod = (!isChecked) ? me.setHtmlRequired : me.removeHtmlRequired,
classMethod = (isChecked) ? 'addClass' : 'removeClass';
requiredMethod(requiredFields);
$fieldSet[classMethod](opts.hiddenClass);
$.publish('plugin/swRegister/onCheckSkipAccount', [me, isChecked]);
},
In Zeile 236
me.$accountFieldset = $el.find(opts.accountFieldSelector);
und zwischen 92 und 98 wird definiert, was zum AccountFieldset gehört?
/**
* Selector for the account field set.
*
* @property accountFieldSelector
* @type {String}
*/
accountFieldSelector: '.register--account-information',
Hierzu habe ich nun zwei Fragen:
Reicht es, diese .js-Datei in die Sturktur des Child-Themes zu verschieben, damit ich Anpassungen vornehmen kann? Ich habe den Eindruck, dass weiterhin die Datei aus /responsive/ verarbeitet wird und nicht die aus meinem Child-Theme.
Wie kann ich am elegantesten bewerkstelligen, dass die Klasse “.register–phone” ebenfalls ausgeblendet wird, wenn “kein Kundenkonto” ausgewählt wird?