Foros del Web » Programando para Internet » Jquery »

Recoger valor de slider range jquery ui

Estas en el tema de Recoger valor de slider range jquery ui en el foro de Jquery en Foros del Web. Buenas, Tengo implemetado el slider de JQuery UI con su minimo y máximo de rango. http://jqueryui.com/demos/slider/#option-max Quiero poder recopilar el valor minimo y máximo del ...
  #1 (permalink)  
Antiguo 22/06/2012, 11:36
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 8 meses
Puntos: 20
Recoger valor de slider range jquery ui

Buenas,

Tengo implemetado el slider de JQuery UI con su minimo y máximo de rango.
http://jqueryui.com/demos/slider/#option-max

Quiero poder recopilar el valor minimo y máximo del slider tal y como haya seleccionado el usuario en dos variablas hidden de un formulario. Pero no consigo hacerlo.

He leido la documentación y dice que se debe hacer así:

Initialize a slider with the max option specified.
$( ".selector" ).slider({ max: 7 });

Get or set the max option, after init.
//getter
var max = $( ".selector" ).slider( "option", "max" );
//setter
$( ".selector" ).slider( "option", "max", 7 );

Pero cuando lo hago lo único que recibo es value="[object Object]"

Mi JS

Código Javascript:
Ver original
  1. $( "#slider-precio" ).slider({
  2.             range: true,
  3.             min: 0,
  4.             max: 500,
  5.             values: [ 0, 300 ],
  6.             slide: function( event, ui ) {
  7.                 $( "#precio" ).val( ui.values[ 0 ] + "€" + " - " + ui.values[ 1 ]+ "€" );
  8.             }
  9.         });
  10.         $( "#precio" ).val( $( "#slider-precio" ).slider( "values", 0 ) +
  11.             "€ -" + $( "#slider-precio" ).slider( "values", 1 ) + "€" );
  12.  
  13.  
  14. var max = $( "#slider-precio" ).slider( "option", "max" );
  15. $("#inputprecio_max").attr('value', max);

¿Alguien sabe que estoy haciendo mal? cómo puedo ver el contenido de [object Object]?

Muchas gracias de antemano!
  #2 (permalink)  
Antiguo 22/06/2012, 11:46
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 8 meses
Puntos: 20
Respuesta: Recoger valor de slider range jquery ui

He descubierto que lo del [object Object].

Era porque primero intentaba obtener los valores sin a ver creado el slider, es decir, el problema era el orden, ya lo había puesto bien en el ejemplo del post anterior, lo que pasa es que yo lo tenia al reves, y tenia puesto primero

var max = $( "#slider-precio" ).slider( "option", "max" );
$("#inputprecio_max").attr('value', max);

Pero sigo teniendo el problema de recopilar los valores que el usuario ha seleccionado.
Solo me coje los valores preestablecidos como minimo o máximo, no el valor minimo o máximo actuales que ha marcado el usuario

He probado las opciones de la documentación sin éxito.

¿Alguien sabe que pasa?

Gracias de antemano
  #3 (permalink)  
Antiguo 22/06/2012, 12:07
Avatar de neodani  
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 8 meses
Puntos: 20
Respuesta: Recoger valor de slider range jquery ui

Y aquí la solución!

Agregué dentro de la función slide: function( event, ui ) las dos lineas, y las dos del final.

Código Javascript:
Ver original
  1. $( "#slider-precio" ).slider({
  2.             range: true,
  3.             min: 0,
  4.             max: 500,
  5.             values: [ 0, 300 ],
  6.             slide: function( event, ui ) {
  7.                 $( "#precio" ).val( ui.values[ 0 ] + "€" + " - " + ui.values[ 1 ]+ "€" );
  8.                 $("#inputprecio_min").attr('value', ui.values[ 0 ]);
  9.                 $("#inputprecio_max").attr('value', ui.values[ 1 ]);
  10.             }
  11.         });
  12.         $( "#precio" ).val( $( "#slider-precio" ).slider( "values", 0 ) +
  13.             "€ -" + $( "#slider-precio" ).slider( "values", 1 ) + "€" );
  14.  
  15. $("#inputprecio_min").attr('value', $( "#slider-precio" ).slider( "values", 0 ));
  16.         $("#inputprecio_max").attr('value', $( "#slider-precio" ).slider( "values", 1 ));

Saludos!

Etiquetas: formulario, input, js, range, recoger, slider
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:56.