Nur Punkt oder Komma in Formularfeld eintragen

Hallo könntet ihr mir vllt sagen wie ich es schaffe das die person die das Formular ausfüllt nur ein . oder , in das Formular eintragen kann ?

Danke für jede Hilfe, mfg Phili1702.

Dazu brauchst du JavaScript

Ja Javascript benutze ich auch. Könntest du mir vllt sagen was ich einfügen müsste damit es klappt weil ich habe keinen blassen schimmer habe erst vor 2 Wochen angefangen zu lernen.

Aber google kannst du doch wohl bedienen, oder?
Mit jquery:

$(document).ready(function () { $("#id_des_input_feldes").keypress(function (e) { if (e.which == 44 || e.which == 46) return true; else return false; }); });

Man sollte dazu noch sagen dass das noch längst nicht ausreichend ist für eine einwandfreie Lösung.
Deshalb habe ich bisher auch nicht geantwortet - das würde den Rahmen sprengen.

u.A. müssten noch folgende Probleme beseitigt werden:

  • Tastenkombinationen (Cmd+C, Cmd+V,…), Systemtasten (Pfeiltasten, Entf, Backspace,…) etc. zulassen.
  • Einfügen von Text per Maus bzw. Cmd+C.

okay danke für die hilfe

Ich würde sowas vorschlagen:

$('input').keyup(function() {
     if($(this).val() !== ',' && $(this).val() !== '.'){
        //Handlung
   }
})

reg = new RegExp('^([0-9]+)'+'(.)'+'([0-9]+)$'); if(reg.test(document.rechnen.wh.value) == false){res = false;}
noch was hinzuzufügen ich habe das Falsch Formuliert ich würde es gerne schaffen wollen dass man eine bieliebige anzahl von zahlen schreiben kann das ein plus darauf folgen muss und dann wieder eine beliebe anzahl von Zahlen. Das habe ich jetzt so weit aber er will es nicht benutzen was muss ich denn beachten ?

Du hast nichts falsch formuliert, du hast eine andere Frage gestellt :wink:

Die Regex passt solange keine Leerzeichen oder Kommas/Punkte vorkommen.
Wird also an anderer Stelle das Problem liegen.
Am besten du machst dich mit den Developer Tools und console.log() deines Browsers vertraut:
https://developer.chrome.com/devtools