Foros del Web » Programando para Internet » Javascript »

Select - Solo lectura

Estas en el tema de Select - Solo lectura en el foro de Javascript en Foros del Web. Hola a todos: No sé si este tema ya fué tratado ya que no encontré nada al respecto. ¿Se puede hacer un "select" que sea ...
  #1 (permalink)  
Antiguo 30/12/2005, 07:32
Avatar de PMP
PMP
 
Fecha de Ingreso: febrero-2003
Ubicación: Chacabuco - Buenos Aires
Mensajes: 214
Antigüedad: 21 años, 9 meses
Puntos: 1
Select - Solo lectura

Hola a todos:

No sé si este tema ya fué tratado ya que no encontré nada al respecto.

¿Se puede hacer un "select" que sea de solo lectura?
Desabilitarlo no me sirve ya que necesito recoger los datos del mismo.


Muchas gracias.
  #2 (permalink)  
Antiguo 30/12/2005, 10:33
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 19 años, 9 meses
Puntos: 33
¿A qué te refieres a que únicamente sea de lectura?
  #3 (permalink)  
Antiguo 30/12/2005, 11:19
Avatar de PMP
PMP
 
Fecha de Ingreso: febrero-2003
Ubicación: Chacabuco - Buenos Aires
Mensajes: 214
Antigüedad: 21 años, 9 meses
Puntos: 1
Me refiero a que no se pueda modificar el valor seleccionado, por ejemplo para un textbox hago:

Código:
frm.txtDistancia.readOnly = "readOnly"
Quisiera hacer lo mismo pero para un objeto del tipo "select".

¿Se entiende?

Muchas gracias
  #4 (permalink)  
Antiguo 30/12/2005, 11:24
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 19 años, 9 meses
Puntos: 33
Pues mira los elementos que muestra el select por default no pueden ser modificados por el usuario
Código HTML:
<select>
	<option>1</option>
	<option>2</option>
</select> 
  #5 (permalink)  
Antiguo 30/12/2005, 11:33
Avatar de PMP
PMP
 
Fecha de Ingreso: febrero-2003
Ubicación: Chacabuco - Buenos Aires
Mensajes: 214
Antigüedad: 21 años, 9 meses
Puntos: 1
Te explico un poco lo que necesito para ver si me entendes.
En un formulario, entre muchos datos, hay que seleccionar el valor de un "select", depende del valor que se haya seleccionado en ese objeto el dejar cambiar ó no ciertos datos del los otros objetos y entre ellos hay otro "select".

Por ejemplo tengo dos combos, en uno de ellos tengo tres opciones (1, 2 y 3) y en el otro combo tengo (A, B, C).
Si en el primer combo selecciono 1 ó 2, en el segundo combo voy a poder seleccionar cualquiera de las tres opciones.
En cambio si en el primer combo selecciono 3, el segundo combo se va a seleccionar automaticamente el valor "A" y no quiero que me lo deje cambiar.

Por ahí es mas dificil de explicar que lo que realmente es.

Muchas gracias por tu interes en ayudarme.
  #6 (permalink)  
Antiguo 30/12/2005, 11:46
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 19 años, 9 meses
Puntos: 33
mira este problema ya fue expuesto dentro del foro Select dinamico
  #7 (permalink)  
Antiguo 30/12/2005, 12:09
Avatar de PMP
PMP
 
Fecha de Ingreso: febrero-2003
Ubicación: Chacabuco - Buenos Aires
Mensajes: 214
Antigüedad: 21 años, 9 meses
Puntos: 1
Muchas gracias por tu esfuerzo, pero no me sirve el ejemplo.
Lo que necesito hacer es mucho mas sencillo porque los valores de los dos combox son siempre los mismos, solo que si selecciona cierto valor de uno me va a dejar seleccionar ó no un valor del otro combox.
Yo lo unico que necesito saber es cómo hacer para que el combox quede de solo lectura, ya que si lo deshabilito para que no se pueda cambiar el valor, despues cuando recojo los datos del formulario no lo voy poder obtener.

Tiré la pregunta en este foro porque realmente no encontré nada en la web que tratara este tema, así que por ahí simplemente no se puede hacer.

Muchas gracias de todos modos.

Felíz año.
  #8 (permalink)  
Antiguo 30/12/2005, 13:01
Avatar de PMP
PMP
 
Fecha de Ingreso: febrero-2003
Ubicación: Chacabuco - Buenos Aires
Mensajes: 214
Antigüedad: 21 años, 9 meses
Puntos: 1
A quien le interese, he encontrado un foro de Java en SUN (inglés) http://forum.java.sun.com/thread.jsp...sageID=3222618 donde se comenta que lo que quiero hacer no es posible.
La única forma de hacerlo es deshabilitando el combobox y cuando se hace el "Submit" se lo vuelve a habilitar para que pase los datos.

Adios y gracias.
  #9 (permalink)  
Antiguo 30/12/2005, 18:07
Avatar de Cap.Buscapina  
Fecha de Ingreso: octubre-2004
Ubicación: Argentina
Mensajes: 836
Antigüedad: 20 años, 2 meses
Puntos: 4
hola, me da no se que contradecir a varios, pero creo que si se puede.
Bastaría con tener una variable global a la cual se le asigne el valor del primer select cada vez que éste cambia, y comprobar cada vez que cambia el segundo combo , verificar si se le permite ser modificado o no.

un ejemplillo:
Cita:
<html>
<head>
<script>
var sel;
function verificar(v){
sel=v;
if (v==3){
document.forms['f']['sele2'].value="A";
}
}

function depende(){
if(sel==3){
alert("Solo se puede seleccionar A");
document.forms['f']['sele2'].value="A";
}
}
</script></head>

<body><form action="" method="get" name="f">
<center>
<select name="sele1" onchange="verificar(this.value)">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<select name="sele2" onchange="depende()">
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
</select>
</center>
</form>
</body>
</html>


saludos
__________________
by Capitán Buscapina
.

Última edición por Cap.Buscapina; 30/12/2005 a las 19:29
  #10 (permalink)  
Antiguo 30/12/2005, 19:33
Avatar de Cap.Buscapina  
Fecha de Ingreso: octubre-2004
Ubicación: Argentina
Mensajes: 836
Antigüedad: 20 años, 2 meses
Puntos: 4
luego de un rato de me parese que es esta es la mejor opcion:

Cita:
<html>
<head>
<script>
si= new Array(0,3,5);
function verificar(v){
s=document.forms['f']['sele2'];
if(v==3){
for(x=0;x<s.options.length;x++){
for(y=0;y<si.length;y++){
if (x==si[y]){e="si";}
}
s.options[x].disabled=(e=="si")?false:true;
e="no";
}
}else{
for(q=0;q<s.options.length;q++){
s.options[q].disabled=false;
}
}
}
</script></head>

<body><form action="" method="get" name="f">
<center>
<select name="sele1" onchange="verificar(this.value)">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<select name="sele2" >
<option value="A">A</option>
<option value="B">B</option>
<option value="C" >C</option>
<option value="D">E</option>
<option value="E">F</option>
<option value="F">G</option>
</select>
</center>
</form>
</body>
</html>
__________________
by Capitán Buscapina
.
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:10.