Frage

Ich suche einen Weg zur benutzerdefinierten Währungsvalidierung mit nativem Magento validate.js

Ich habe ein Formular, mit dem Benutzer einem Textfeld benutzerdefinierte Preise hinzufügen können. Ich verwende die folgenden Klassen, um die Eingaben zu validieren:

validate-digits-range 

digits-range-1-10

Das Problem ist, dass das Textfeld mit dem Währungszeichen vorgepopuliert wird £ Also wird keine Validierung bestehen.

Ich habe versucht, das anzupassen validate-currency-dollar Klasse, aber der Test schlägt immer noch fehl

Validation.add('validate-currency-dollar', 'Please enter a valid $ amount. For example $100.00.', function(v) {
    // [$]1[##][,###]+[.##]
    // [$]1###+[.##]
    // [$]0.##
    // [$].##
    return Validation.get('IsEmpty').test(v) ||  /^\$?\-?([1-9]{1}[0-9]{0,2}(\,[0-9]{3})*(\.[0-9]{0,2})?|[1-9]{1}\d*(\.[0-9]{0,2})?|0(\.[0-9]{0,2})?|(\.[0-9]{1,2})?)$/.test(v)
});

Hat jemand das schon einmal getan, um bitte Ratschläge zu geben?

War es hilfreich?

Lösung

Ich habe mich ein bisschen regelmäßig verändert

/^[\$£]?\-?([1-9]{1}[0-9]{0,2}(\,[0-9]{3})*(\.[0-9]{0,2})?|[1-9]{1}\d*(\.[0-9]{0,2})?|0(\.[0-9]{0,2})?|(\.[0-9]{1,2})?)$/

Versuchen Sie es anstelle von Standard.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit magento.stackexchange
scroll top