Esta es el arreglo más correcta que te podemos aportar, pero primero estúdiala detenidamente y analiza si se adapta a tu proyecto.
Solución:
esto puede funcionar..
var sliderFormat = document.getElementById('slider-format');
noUiSlider.create(sliderFormat,
start: [ 20 ],
...
format:
from: function(value)
return parseInt(value);
,
to: function(value)
return parseInt(value);
);
Puedes intentar usar el unencoded
valor como se describe en la documentación de noUISlider sobre eventos y su vinculación
slider.noUiSlider.on("update", function(values, handle, unencoded )
// values: Current slider values;
// handle: Handle that caused the event;
// unencoded: Slider values without formatting;
);
u otra posibilidad sería usar la opción de formato en la creación del control deslizante (pero aún no lo he probado):
noUiSlider.create(slider,
start: [ 20000 ],
...
format: wNumb(
decimals: 0, // default is 2
thousand: '.', // thousand delimiter
postfix: ' (US $)', // gets appended after the number
)
);
El inconveniente es que debe descargar la biblioteca wNumb por separado desde aquí: http://refreshless.com/wnumb/.
Otra forma sin wNumb
Después de echar otro vistazo a los ejemplos de noUISlider, encontré esta forma de formatear manualmente (en la parte inferior de la página):
var sliderFormat = document.getElementById('slider-format');
noUiSlider.create(sliderFormat,
start: [ 20 ],
...
format:
to: function ( value )
return value + ',-';
,
from: function ( value )
return value.replace(',-', '');
);
Si cree que nunca necesitará tener decimales en su sitio, puede buscar en el archivo jquery.nouislider.min.js para toFixed(2)
y reemplazar con toFixed(0)
.
Calificaciones y comentarios
Si tienes algún recelo y capacidad de arreglar nuestro enunciado eres capaz de escribir una crítica y con gusto lo estudiaremos.