Foros del Web » Programando para Internet » Javascript »

Aparece Option de mas en ComboBox

Estas en el tema de Aparece Option de mas en ComboBox en el foro de Javascript en Foros del Web. Muy buenas tardes a todos ustedes compañeros del foro… He estado buscando por todos lados la solución a mi caso pero no doy con la ...
  #1 (permalink)  
Antiguo 06/12/2009, 17:04
Avatar de ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.774
Antigüedad: 16 años, 2 meses
Puntos: 1146
Aparece Option de mas en ComboBox

Muy buenas tardes a todos ustedes compañeros del foro…
He estado buscando por todos lados la solución a mi caso pero no doy con la respuesta.
Verán necesito crear dos combo box donde el segundo dependa de la selección en el primero… pero al crearlos como resultado obtengo mi listado mas una opción extra en blanco.
Extraigo parte de mi código para usarlo como ejemplo:

Java:
Código HTML:
<script type="text/javascript">
var Marcas = '\
Canon:Accesorios Canon:Accesorios Canon|\
Canon:Accesorios Ricoh:Accesorios Ricoh|\
Canon:Accesorios Xerox:Accesorios Xerox|\
Canon:Cabeza impresion:Cabeza impresión|\
Canon:Copiadoras:Copiadoras|\
Canon:Duplicadoras:Duplicadoras|\
Canon:Escaners:Escaners|\
';

var MarcasLineArray = Marcas.split('|');
function CargarMarcas (){
	for (x=0;x<MarcasLineArray.length;x++)
	document.formulario.ComboMarcas [x] = new Option(MarcasLineArray[x]);
}
</script> 
HTML:
Código HTML:
 <form name="formulario" id="formulario">
Marcas	<select name="ComboMarcas" id="ComboMarcas">
</select>
  </form> 
Ya hice la prueba usando:
Código:
Marcas = new Array ('Xerox','Canon','HP');
Pero decidí no utilizar el new Array ya que ligar los combos me forzaría usar un código java más extenso.

Ya tengo los combobox funcionando utilizando otros filtros para separar Marcas de Categorías… solo me falta saber cómo quitar esa opción que aparece de mas.

Desde ya.... muchas gracias por su ayuda…
  #2 (permalink)  
Antiguo 06/12/2009, 22:07
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: Aparece Option de mas en ComboBox

la opcion extra te aparece porque el string termina con un caracter "separador", en tu caso la barra vertical.
Código:
Canon:Escaners:Escaners|\
creo que conviene mejor entender como funciona split. este divide la cadena creando elementos de array, eso es lo basico. pero como decide crear los elementos... simplemente crea un elemento por cada lado del separador, incluso si es vacio. analiza el siguiente ejemplo.
Código:
var str = ','.split(',');
alert(str.length);
el alerta indica que el array contiene dos elementos aunque la cadena solo esta compuesta de una coma. dado que el separador es una coma, split crea un elemento para el contenido que aparece antes de la coma y otro elemento para el contenido que aparece despues de la coma. en este ejemplo, por supuesto, cada elemento contiene una cadena de cero longitud, o sea un string vacio.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #3 (permalink)  
Antiguo 07/12/2009, 00:31
Avatar de ArturoGallegos
Moderador
 
Fecha de Ingreso: febrero-2008
Ubicación: Morelia, México
Mensajes: 6.774
Antigüedad: 16 años, 2 meses
Puntos: 1146
Respuesta: Aparece Option de mas en ComboBox

Muchas gracias por la aclaración, créeme que le di muchas vueltas al asunto y no di con ese detalle… creo que me concentre demasiado en integrar el resto de las funcionalidades que pase por alto esa última barra vertical.

Mil gracias amigo zerokilled
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 06:16.