Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] añadir registro combo en el medio

Estas en el tema de añadir registro combo en el medio en el foro de Javascript en Foros del Web. disculpen la pregunta pero ya he tratado de buscar información o no la entiendo o no la consigo, lo que requiero hacer en javascript es ...
  #1 (permalink)  
Antiguo 18/01/2013, 15:03
Avatar de jcamacho  
Fecha de Ingreso: marzo-2008
Mensajes: 72
Antigüedad: 16 años, 1 mes
Puntos: 1
añadir registro combo en el medio

disculpen la pregunta pero ya he tratado de buscar información o no la entiendo o no la consigo, lo que requiero hacer en javascript es borrar un item de un combo y añadir otro pero en la mitad y no lo consigo lo que tengo es esto.

//para borrar el item
var aBorrar = document.forms["formAgregarUsuario"]["sltIdTipoUsuario"].options[3];
aBorrar.parentNode.removeChild(aBorrar);

// para agregar el item

var newOpt = document.forms["formAgregarUsuario"]["sltIdTipoUsuario"].appendChild(document.createElement('option'));
newOpt.text = "Textovalor";
newOpt.value = 6;
document.formAgregarUsuario.sltIdTipoUsuario.selec tedIndex = 0;


pero como les comente como borro el item numero "3" debo agregar este otro en esa misma posición que me falta que no lo puedo hacer.... asi como esta me incluye pero en la ult posición
  #2 (permalink)  
Antiguo 18/01/2013, 15:05
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: añadir registro combo en el medio

Puedes usar insertBefore en lugar de appendChild:
https://developer.mozilla.org/en-US/...e.insertBefore
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 18/01/2013, 15:13
Avatar de jcamacho  
Fecha de Ingreso: marzo-2008
Mensajes: 72
Antigüedad: 16 años, 1 mes
Puntos: 1
Respuesta: añadir registro combo en el medio

lo puse así pero en la primera parte al borrar el item 3, y después en esta parte para agregar pareciera que me sustituye el otro que queda en la posición 3 porque no me lo muestra, y de paso me parece que da error porque no me da el alert


var aAnadir = document.forms["formAgregarUsuario"]["sltIdTipoUsuario"].options[3]=new Option("Textovalor","6");
Anadir.parentNode.insertBefore(aAnadir,3);
alert('1');
  #4 (permalink)  
Antiguo 18/01/2013, 15:27
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: añadir registro combo en el medio

Revisa bien el enlace, el segundo parámetro es antes de cuál elemento quieres insertar.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 18/01/2013, 15:44
Avatar de jcamacho  
Fecha de Ingreso: marzo-2008
Mensajes: 72
Antigüedad: 16 años, 1 mes
Puntos: 1
Respuesta: añadir registro combo en el medio

fijate lo que hace; le comente la linea "Anadir.parentNode.insertBefore(aAnadir,3); " y si me dio el alert debe existir algo que estoy haciendo mal sin embargo hace esto:

quiero borrar itemc y sustituirlo por itemh

<selected>
itema
itemb
itemc
itemd
itemf
<selected>

queda:

<selected>
itema
itemb
itemh
itemf
<selected>

pero el itemd desaparece tambien :s
  #6 (permalink)  
Antiguo 18/01/2013, 16:05
Avatar de jcamacho  
Fecha de Ingreso: marzo-2008
Mensajes: 72
Antigüedad: 16 años, 1 mes
Puntos: 1
Respuesta: añadir registro combo en el medio

ya conseguí como hacerlo!!! gracias al moderador y entiendo que no todas las veces se tiene que dar las respuestas en las manos pero también creo que cuando la respuesta es sencilla para alguien que esta especializado en la materia se podría ayudar mas al necesitado; de todas maneras gracias por la contesta y aquí les va la respuesta para el próximo que le toque hacer lo mismo:

var selectTag = document.forms["formAgregarUsuario"]["sltIdTipoUsuario"];
var option = document.createElement ("option");
selectTag.insertBefore (option, selectTag.options[3]);
option.text = "Textovalor";
option.value = 7

Etiquetas: combo, medio, registro
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 04:13.