Foros del Web » Programando para Internet » Javascript »

Pasar como parametro un Array dinamico.

Estas en el tema de Pasar como parametro un Array dinamico. en el foro de Javascript en Foros del Web. Buenas Foreros !!! A ver si me pueden ayudar con un problema que en principio, parecía simple, pero que me está dando muchos problemas. Estoy ...
  #1 (permalink)  
Antiguo 02/08/2012, 01:45
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 17 años
Puntos: 7
Pasar como parametro un Array dinamico.

Buenas Foreros !!!

A ver si me pueden ayudar con un problema que en principio, parecía simple, pero que me está dando muchos problemas.

Estoy usando la librería de google para buscar lugares en el google maps, y todo me funciona perfecto. Ningún problema.

Pero... el problema es que lo que estoy usando, que es para buscar lugares, tengo que pasar en un parametro llamado types, un array de los tipos de negocios que quiero buscar. Y lo que me gustaría es que en vez de que vaya en "hard code" me gustaría que fuera en funcion de lo que seleccionase un usuario en el combo.

Es decir... (Fijense en el types)

ESTO FUNCIONA:
Código:
            var options = {
                location: currentLocation,
                radius: '500',
                types: ['bank']
            };
ESTO NO ME FUNCIONA:
Código:
            var typesToSearch = $('#cmbSearchOptions').find(":selected").text();
            var objArray = new Array();
            objArray[0] = typesToSearch;

            var options = {
                location: currentLocation,
                radius: '500',
                types: objArray
            };
¿Saben que estoy haciendo mal, por favor?
__________________
Charlie.
  #2 (permalink)  
Antiguo 02/08/2012, 02:18
Avatar de dontexplain  
Fecha de Ingreso: junio-2012
Mensajes: 536
Antigüedad: 8 años
Puntos: 127
Respuesta: Pasar como parametro un Array dinamico.

1) No sabía que un checkbox tuviera texto que recuperar por .text(), lo normal es recuperar su value por .val() y cualquier otro atributo por .attr(atributo).

2) Cualquier propiedad de índole de recuperación de valor de elemento sólo lo realiza para el primer elemento del conjunto devuelto por el selector

Cita:
Get the current value of the first element in the set of matched elements.
Eso significa que tendrás que, primero, almacenar los elementos en un array y luego hacer un bucle que almacene los valores en otra array

var typesToSearch = $('#cmbSearchOptions').find(":selected");
typesToSearchtext = [];
$.each(typesToSearch, function(i,e){
typesToSearchText[i] = $(e).val();
})

var options = {
location: currentLocation,
radius: '500',
types: typesToSearchText
};

3) Una segunda forma alternativa, por si te interesa, es hacer el bucle sobre el conjunto. Es lo mismo que lo anterior, pero simplificado.

$('#cmbSearchOptions').find(":selected").each(func tion(i,e){
typesToSearchText[i] = $(e).val();
})

Un saludo
__________________
21añero.
HTML/CSS, PHP, JS/jQuery, Mysql; NodeJS/Socket.io (& V8); C++ ; Python (wxpy); Ensamblador.
Músico (clarinetista/pianista) y compositor

Última edición por dontexplain; 02/08/2012 a las 02:23
  #3 (permalink)  
Antiguo 02/08/2012, 02:44
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 17 años
Puntos: 7
Respuesta: Pasar como parametro un Array dinamico.

Muchas gracias dontextplain, sobre el punto 1, decirte que no es un checkbox, sino un SELECT.

Por lo demás, me ha servido de mucho tu respuesta. Te estoy muy agradecido.

Un saludo compañero.
__________________
Charlie.

Etiquetas: funcion, parametro
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 02:15.