Ich benutze die Zahlenformatierung (wNumb) für ein Textfeld. Es wird durch den Bereichsschieberegler (noUislider) aktualisiert und das funktioniert gut.Übergeben Sie den Anfangswert bei der Verwendung der Javascript-Nummer Formatierung
Die Frage, die ich erlebt habe, ist, dass wenn ich senden Sie das Formular, der gespeicherte Wert von 1000 (wahrscheinlich aufgrund der Tausendertrenn) unterteilt ist.
Wie kann ich die wNumb Formatierung beim Senden loswerden?
...
<%= f.text_field :salary, id: "how-much" %>
<div id="slider-format"></div>
<div class="field">
<%= f.label :comment %><br>
<%= f.text_area :comment %>
</div>
<div class="actions">
<%= f.submit %>
</div>
Dann wird das Skript unter:
<script>
var sliderFormat = document.getElementById('slider-format');
noUiSlider.create(sliderFormat, {
start: [ 200000 ],
step: 1000,
connect: 'upper',
range: {
'min': [ 10000 ],
'max': [ 250000 ],
},
format: wNumb({
decimals: 0,
thousand: '.',
postfix: ' (US $)',
})
});
var inputValue = document.getElementById('how-much');
sliderFormat.noUiSlider.on('update', function(values, handle) {
inputValue.value = values[handle];
});
inputValue.addEventListener('change', function(){
sliderFormat.noUiSlider.set(this.value);
});
</script>
Die Anweisungen auf http://refreshless.com/wnumb/ sind die folgenden ... Ich verstehe nicht, wie das verwenden, wenn das ist, was soll ich verwenden.
Usage
var moneyFormat = wNumb({
mark: '.',
thousand: ',',
prefix: '$ ',
postfix: ' p.p.'
});
// Format a number:
moneyFormat.to(301980.62);
=> '$ 301,980.62 p.p.'
// Get a number back:
moneyFormat.from('$ 301,980.62 p.p.');
=> 301980.62
Klärung von Zweifeln - möchten Sie einen Wert von 301980,62 anstelle von $ 301,980.62 p.p. Oder wenn Ihr Formatierer nicht richtig funktioniert? – Bhumika107
Ich möchte, dass der Benutzer 301980 setzt, dies würde als $ 301.980 angezeigt werden, aber wenn Sie auf die Schaltfläche zum Absenden des Formulars klicken, erhalten Sie 301980 erneut. Für den Moment bekomme ich 301 in der Datenbank ... Der letzte Block des Codes ist nicht von mir, es ist von der Dokumentation und ich weiß nicht, wie man das mit meinem Code benutzt. – Sbe88