• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

html komma statt punkt

machmichnichtan

Neues Mitglied
wie kann ich in ein input feld komma statt punkt wiedergeben.
<input type="number" class="TauschePunktKomma" name="servertime_page2" min="-24" max="24" step="0.5" value="0" size="20">

(7,5) wird angezeigt aber beim submit kommt 7.5 heraus.
 
Werbung:
Welches Trennzeichen das Number-Feld benutzt obliegt dem Browser. Die Browser treffen hier ihre Entscheidung auf Basis des lokalen Systems und dessen Spracheinstellungen und manche Browser versuchen auch von der Sprache der Website aus , Rückschlüsse auf das Format zu bekommen.

Hier hat sich jemand die Mühe gemacht dies für alle Browser zusammenzufassen: https://www.aeyoun.com/posts/html5-input-number-localization.html

Grundsätzlich kannst du als Programmierer dieses Verhalten nicht wirklich beeinflussen. Das einzige mir bekannte Workaround ist es zwei Integer-Felder zu nutzen , wobei eines die Stellen vor dem Komma und das andere die Stellen nach dem Komma angibt , was es dir ermöglich das dann serverseitig richtig zusammenzubauen. Zugegeben diese Methode ist ziemlich hässlich, ich würde darauf verzichten.

Wozu musst du das den genau unterscheiden?

Nachtrag: Du kannst die Sprache des Input-Feldes(!) auf eine Spracheinstellung die ein Comma nutzt setzen, dann funktionieren in der Regel beide Varianten.
 
Zuletzt bearbeitet:
Oder man verwendet ein Textinput und lässt dort per JavaScript nur Ziffern und Punkte zu. Aber beim Submit benötigt man ohnehin die Punktnotation, so denn mit übertragenen Wert gerechnet werden soll.
 
Werbung:
Habe jetzt das genommen geht auch irgendwie... ;)
HTML:
<select name="servertime_page2">
<option value="24">24</option>
<option value="23,5">23,5</option>
<option value="23">23</option>
<option value="22,5">22,5</option>
<option value="22">22</option>
<option value="21,5">21,5</option>
<option value="21">21</option>
<option value="20,5">20,5</option>
<option value="20">20</option>
<option value="19,5">19,5</option>
<option value="19">19</option>
<option value="18,5">18,5</option>
<option value="18">18</option>
<option value="17,5">17,5</option>
<option value="17">17</option>
<option value="16,5">16,5</option>
<option value="16">16</option>
<option value="15,5">15,5</option>
<option value="15">15</option>
<option value="14,5">14,5</option>
<option value="14">14</option>
<option value="13,5">13,5</option>
<option value="13">13</option>
<option value="12,5">12,5</option>
<option value="12">12</option>
<option value="11,5">11,5</option>
<option value="11">11</option>
<option value="10,5">10,5</option>
<option value="10">10</option>
<option value="9,5">9,5</option>
<option value="9">9</option>
<option value="8,5">8,5</option>
<option value="8">8</option>
<option value="7,5">7,5</option>
<option value="7">7</option>
<option value="6,5">6,5</option>
<option value="6">6</option>
<option value="5,5">5,5</option>
<option value="5">5</option>
<option value="4,5">4,5</option>
<option value="4">4</option>
<option value="3,5">3,5</option>
<option value="3">3</option>
<option value="2,5">2,5</option>
<option value="2">2</option>
<option value="1,5">1,5</option>
<option value="1">1</option>
<option value="0,5">0,5</option>
<option selected="selected" value="0">0</option>
</select>
 
Du musst hier in der Value einen Punkt statt dem Komma angeben/oder das ganze dann serverseitig umwandeln, da keine (zumindest mir bekannte) Programmiersprache ein Komma interpretieren und richtig damit rechnen kann.
 
Zurück
Oben