Funktioniert gut auf Chrome, aber in Firefox kann ich nicht drücken Sie die Löschtaste oder die Rücktaste, um die Nummer zu bearbeiten. Wo ist das Problem in meinem Skript? Natürlich kann ich einen anderen Weg verwenden, um dies zu tun, aber ich möchte wissen, welche Fehler Firefox über das Skript ausführen soll?Einfache Nummer Eingabe Validierung in Javascript (Firefox Fehler)
Antwort
if(theEvent.preventDefault) theEvent.preventDefault();
Sie verfehlten "{
"
if(theEvent.preventDefault){
theEvent.preventDefault();
}
JavaScript Zeichengenauigkeit ist. Erinnere dich daran. Ich hoffe, es hat geholfen. Viel Glück.
Hallo @Raju Ahmed Ich überprüfe deinen Code und stelle fest, dass du Schlüssel mit regex
testest, aber das Problem ist, dass es nur nach Zahlen sucht und das ist, was du gefragt hast. Aber Sie müssen auch nach Delete Key suchen (was 46 ist) und auch nach Backspace (was 8 ist) und anderen Schlüsseln suchen, was Sie verwenden möchten.
Auch ich teste Ihren Code auf Chrome Build 55.0.2883.87 m (64-Bit) und es funktioniert auch nicht für löschen, Backspace und andere.
Sie könnte wie folgt verwenden, wenn u jQuery verwenden:
function onlyNumberInput(evt) {
var theEvent = evt || window.event;
var allowed = [8, 17, 46, 37, 38, 39, 40];
var key = theEvent.keyCode || theEvent.which;
var regex = /[0-9]/;
if($.inArray(allowed, key) !== -1) {
key = String.fromCharCode(key);
if(!regex.test(key)) {
theEvent.returnValue = false;
if(theEvent.preventDefault)
theEvent.preventDefault();
}
}
}
Wenn Sie andere Tasten verwenden möchten, finden Sie die keyCode den Schlüssel und fügen Sie in erlaubt. Wenn Sie JQuery nicht in Ihrem Code verwenden, lassen Sie es mich bitte wissen. Ich kann es zur normalen Version ändern :)
Eine weitere Sache, dies erlaubt ist in JS zu verwenden, wenn Sie nur eine Zeile Job:
if(theEvent.preventDefault)
theEvent.preventDefault();
bearbeiten II:
Well @Raju Ich habe den Code erneut überprüft, es funktioniert nicht, wie Sie wünschen. Also habe ich ein Beispiel dafür mit einem Plugin gefunden, wenn du es benutzen willst.
Plugin: NumericInput,
Demo: Demo
Sie können diesen Link überprüfen über Zahl nur Eingabe des: HTML Text Input allow only Numeric input
Danke für Ihre Mühe. Verwenden Sie die gleiche Version und jQuery auch. Ihr Skript funktionierte für Löschen/Backspace in Firefox, aber jetzt ist es nicht in der Lage, beide Browser zu identifizieren. Leute aus vielen Ländern werden meine Anwendung benutzen. Also sollte es für jede Browserversion funktionieren. –
- 1. Einfache JavaScript-Validierung funktioniert nicht?
- 2. HTML Eingabe Validierung mit Javascript
- 3. Einfache JavaScript-Konsole Protokoll (FireFox)
- 4. Eingabe Text Wert Zeichenfolge Validierung in Javascript
- 5. Nur JQuery-Nummer Validierung
- 6. Integer-Validierung für Eingabe
- 7. Java: Validierung, wenn die Eingabe eine bestimmte Nummer ist
- 8. JavaScript-Nummer Eingabe mit Text angezeigt
- 9. Einfache Ruby-Eingabe-Validierungsbibliothek
- 10. Filter Eingabe Typ Nummer mit Javascript
- 11. String Eingabe Validierung in Spezialform
- 12. JavaScript Eingabe Validierung: Zahlen und Strich
- 13. Validierung eines Benutzers Eingabe
- 14. Fehler beim Lesen der Eingabe in Javascript
- 15. Eingabe Validierung in Textfeld
- 16. Eingabe akzeptieren Attribut in Firefox
- 17. Firefox Javascript: Entfernen Sie nicht-numerische Zeichen von der Eingabe des Typs "Nummer" - FF Problem
- 18. Nummer Eingabe Typ zu klein
- 19. Einfache Validierung mit Attributmuster in HTML
- 20. Angular2: Nummer Validierung in IE
- 21. GST Nummer Validierung in PHP
- 22. JavaScript-Fehler auf FireFox ns_error_dom_security_err
- 23. einfache Textfeld-Validierung in <Rich: ModalPanel> mit JavaScript
- 24. Einfache benutzerdefinierte Validierung in angular2
- 25. Bootstrap - Eingabe (Nummer) mit Chrome
- 26. Bootstrap-Nummer Validierung
- 27. "Nicht definiert" Javascript Fehler in Firefox
- 28. Jquery einfache Email Validierung
- 29. MVC3 einfache benutzerdefinierte Validierung
- 30. Radiobutton Validierung in Javascript
Es stimmt, dass Javascript Zeichengenauigkeit ist aber auch diese 'if (theEvent erlaubt. preventDefault) theEvent.preventDefault(); ' Sie müssen keine Breackets für einen Zeilencode auf Bedingungen verwenden –
Das ist kein Problem, denke ich ... Obwohl ich gerade mit Zahnspange versucht. Aber denken Sie daran, dass Chrome funktioniert. In Firefox drückt das Drücken der Rücktaste meine Funktion auch und weigerte sich, irgendeine normale Arbeit dieses Schlüssels zu machen, aber in chrome ruft es meine Funktion nicht an, wenn ich diese Tasten drücke und nur für Zifferntasten ruft es meine Funktion auf und funktioniert gut. –