Ich habe ein Betragsfeld, das ich automatisch alle $ Zeichen entfernen möchte, die der Benutzer eingegeben. Zum Beispiel, wenn sie in $ 50 -Ich möchte, dass automatisch auf 50 ändern Denn wenn sie $ 12.50 eingeben, ändert sich das automatisch auf 12.50.
Ich habe das folgende Skript.
$('#searchAmt').on('keyup',function(){
var oldtxt = $(this).val();
var findtxt = '^[$]';
var newtxt = oldtxt.replace(new RegExp(findtxt, 'g'), '');
$(this).val(newtxt);
});
Dies funktioniert das Dollarzeichen bei der Beseitigung, aber es ist das Entfernen auch jede Nachkommastelle der Benutzer legt also über die Beispiele verwenden, es ändert sich $ 50 bis 50 aber es ändert sich $ 12,50 zu 1250.
Es ist erwähnenswert, dass das Eingabefeld, das ich für diesen benutze, einen Eingabetyp der Zahl hat. In Safari & Chrome, dies verhindert, dass der Benutzer eine $ - aber in Firefox und IE, kann der Benutzer immer noch ein $.
Es scheint, dass es einige andere Stück Code, den Punkt entfernt. '^ [$]' entspricht nur einem '$' Symbol am Anfang der Zeichenfolge. –
Was passiert, wenn sie '£' eingeben? Ist es nicht besser, nach Zahlen zu suchen und das zu behalten? – vlaz
Bitte klären Sie, indem Sie Ihren relevanten Code hinzufügen, oder die Leute werden irrelevante Antworten posten. Bitte überprüfen Sie den Funktionscode "keydown". –