Foros del Web » Programando para Internet » Javascript »

Cambiar select por un textbox

Estas en el tema de Cambiar select por un textbox en el foro de Javascript en Foros del Web. Buenas foro Tengo un problemilla con un codigo que me encontre por aki. Es para autorrellenar los input con un select pero quisiera que en ...
  #1 (permalink)  
Antiguo 13/11/2012, 12:17
Avatar de jandrogdz  
Fecha de Ingreso: julio-2012
Ubicación: public $Guadalajara
Mensajes: 397
Antigüedad: 11 años, 10 meses
Puntos: 12
Pregunta Cambiar select por un textbox

Buenas foro

Tengo un problemilla con un codigo que me encontre por aki. Es para autorrellenar los input con un select pero quisiera que en vez de que fuera select fuese un textbox
pero no tengo ni la mas remota idea de como hacerlo alguien me podria ayudar.

Esto es lo que tengo como javascript:
Código Javascript:
Ver original
  1. <script>
  2.    
  3.     //funcion que limpia los demas campos
  4.     function LimpiarInput(destino,destino2)
  5.     {
  6.         destino.value="";  
  7.     }
  8.     //funcion que llena los datos
  9.     function LlenarDatos(text,destino,destino2,destino3,destino4)
  10.     {
  11.         //alert(''+text);
  12.         var datos = text.split('|'); //dividimos los datos para colocarlos en el lugar correcto    
  13.         destino.value = datos[0];
  14.         destino2.value = datos[1];
  15.         destino3.value = datos[2];
  16.         destino4.value = datos[3];
  17.     }
  18.    
  19.     //fucion con la cual obtenemos  los datos
  20.     function obten_datos(arrastre,destino,destino2,destino3,destino4)
  21.     {
  22.        
  23.         //alert("arrastre: "+arrastre+" destino: "+destino+" destino2: "+destino2+" destino3: "+destino3);
  24.         destino = document.getElementById(destino);
  25.         destino2 = document.getElementById(destino2);
  26.         destino3 = document.getElementById(destino3);
  27.         destino4 = document.getElementById(destino4);
  28.  
  29.         LimpiarInput(destino);
  30.         LimpiarInput(destino2);
  31.         LimpiarInput(destino3);
  32.         LimpiarInput(destino4);
  33.        
  34.         if(arrastre.options[arrastre.selectedIndex].value != 0)
  35.         {
  36.             arrastre.disabled = true;
  37.             destino.disabled = true;
  38.             destino.value = 'Cargando Nombre....';
  39.             destino2.disabled = true;
  40.             destino2.value = 'Cargando ap paterno....';
  41.             destino3.disabled = true;
  42.             destino3.value = 'Cargando ap materno....';
  43.             destino4.disabled = true;
  44.             destino4.value = 'Cargando correo....';
  45.            
  46.             $.ajax({
  47.                 type: 'get',
  48.                 dataType: 'text',
  49.                 url: 'obtenerdatos.php',
  50.                 data: {valor: arrastre.options[arrastre.selectedIndex].value},
  51.                 success: function(text){
  52.                     LlenarDatos(text,destino,destino2,destino3,destino4);
  53.                     arrastre.disabled = false;
  54.                    
  55.                     destino.disabled = true;
  56.                     destino.readOnly = true;
  57.                    
  58.                     destino2.disabled = true;
  59.                     destino2.readOnly = true;
  60.                    
  61.                     destino3.disabled = true;
  62.                     destino3.readOnly = true;
  63.                    
  64.                     destino4.disabled = true;
  65.                     destino4.readOnly = true;
  66.                         }
  67.             });    
  68.         }
  69.     }
  70. </script>

y asi cargo los datos:

Código PHP:
Ver original
  1. <select name="name" id="name" onchange="javascipt:obten_datos(this,'nombre','ap_pat','ap_mat','correo');">
  2.           <option value="0">elige</option>
  3.           <?php
  4.             // creamos las opciones del select
  5.             $connection = new DBConnection();
  6.             if($objectoUsuario = $connection->recordsList("SELECT usuarioID, nombre, ap_pat FROM Usuario"))
  7.             {
  8.             foreach($objectoUsuario as $objeto)
  9.                 {
  10.                 ?>
  11.                     <option value="<?php echo $objeto->usuarioID; ?>"> <?php echo $objeto->nombre." ".$objeto->ap_pat; ?></option>  
  12.                 <?php
  13.                 }
  14.             }
  15.           ?>        
  16.         </select>

espero m puedan ayudar...
__________________
Lo imposible solo cuesta un poco mas
  #2 (permalink)  
Antiguo 13/11/2012, 12:33
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 3 meses
Puntos: 155
Respuesta: Cambiar select por un textbox

a ver si te entendi , lo que quieres es que cuando eligas un dato te aparezca un text con determinada info vea?

independientemente de con la tecnología que lo quieras hacer para ajax ,la onda va por el mesmo lado, cuando selecciones el dato de tu select deberas hacer una peticion por ajax que te regrese un textbox ya con los datos que necesitas ese textt box lo deberas escribir dentro de algun otro contenedor por ejemplo un div , al cual le pondras en la propiedad innerHtml el textbox
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #3 (permalink)  
Antiguo 13/11/2012, 12:36
Avatar de jandrogdz  
Fecha de Ingreso: julio-2012
Ubicación: public $Guadalajara
Mensajes: 397
Antigüedad: 11 años, 10 meses
Puntos: 12
Respuesta: Cambiar select por un textbox

Gracias por contestar mogurbon.
No a lo mejor no me explique bien, lo que quiero es sustituir ese select por un textbox que en vez de usar un lista quisiera utilizar un textbox que tengo con autocomplete esto por la razon de que una lista puede aumentar a mas de 1000 registros y de l aotra forma tengo mejor control sobre los datos.

Espero haberme explicad bien...
__________________
Lo imposible solo cuesta un poco mas
  #4 (permalink)  
Antiguo 13/11/2012, 12:58
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 3 meses
Puntos: 155
Respuesta: Cambiar select por un textbox

pero no todo en un solo text vea ? o si?

si son varios va por la misma onda generaras varios text que meteras en un div con innerHtml , conviene que el valor de estos texts los pongas como name=mitexto[] para que se mas facil manejarlos
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #5 (permalink)  
Antiguo 13/11/2012, 13:02
Avatar de jandrogdz  
Fecha de Ingreso: julio-2012
Ubicación: public $Guadalajara
Mensajes: 397
Antigüedad: 11 años, 10 meses
Puntos: 12
Respuesta: Cambiar select por un textbox

A lo mejor sigo sin entenderme.

Quiero que en vez de hacer una seleccion de un select yo pueda escribir el nombre del usuario.

Osea que el codigo quedara algo asi:


Código HTML:
Ver original
  1. <input type="text" name="name" id="name" onchange="javascipt:obten_datos(this,'nombre','ap_pat','ap_mat','correo');">
__________________
Lo imposible solo cuesta un poco mas
  #6 (permalink)  
Antiguo 13/11/2012, 13:10
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 3 meses
Puntos: 155
Respuesta: Cambiar select por un textbox

a ya te entendi un autocomplete

http://docs.jquery.com/Plugins/Autocomplete
http://blog.rarecore.eu/autocompleter-using-xajax.html

ahi unas ligas la idea es que en el onkeypress vaya mandando peticiones a php

del tipo select where dato like %laletraque metieron%

con un div sobrepuesto en el textbox ira dibujando lo que obtenga de la base de datos
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #7 (permalink)  
Antiguo 13/11/2012, 13:15
Avatar de jandrogdz  
Fecha de Ingreso: julio-2012
Ubicación: public $Guadalajara
Mensajes: 397
Antigüedad: 11 años, 10 meses
Puntos: 12
Respuesta: Cambiar select por un textbox

Men ya tengo el autocomplete.
Sigues sin entenderme quiero que el valor que se manda sea de un textbox pero no se como cachar ese valor cuando viene de un textbox, logre cacharlo con un select pero la idea es que sea con un textbox en esta parte del codigo.

Código Javascript:
Ver original
  1. //fucion con la cual obtenemos  los datos
  2.     function obten_datos(arrastre,destino,destino2,destino3,destino4)
  3.     {
  4.        
  5.         //alert("arrastre: "+arrastre+" destino: "+destino+" destino2: "+destino2+" destino3: "+destino3);
  6.         destino = document.getElementById(destino);
  7.         destino2 = document.getElementById(destino2);
  8.         destino3 = document.getElementById(destino3);
  9.         destino4 = document.getElementById(destino4);
  10.  
  11.         LimpiarInput(destino);
  12.         LimpiarInput(destino2);
  13.         LimpiarInput(destino3);
  14.         LimpiarInput(destino4);
  15.        
  16.         if(arrastre.options[arrastre.selectedIndex].value != 0)
  17.         {
  18.             arrastre.disabled = true;
  19.             destino.disabled = true;
  20.             destino.value = 'Cargando Nombre....';
  21.             destino2.disabled = true;
  22.             destino2.value = 'Cargando ap paterno....';
  23.             destino3.disabled = true;
  24.             destino3.value = 'Cargando ap materno....';
  25.             destino4.disabled = true;
  26.             destino4.value = 'Cargando correo....';
  27.            
  28.             $.ajax({
  29.                 type: 'get',
  30.                 dataType: 'text',
  31.                 url: 'obtenerdatos.php',
  32.                 data: {valor: arrastre.options[arrastre.selectedIndex].value},
  33.                 success: function(text){
  34.                     LlenarDatos(text,destino,destino2,destino3,destino4);
  35.                     arrastre.disabled = false;
  36.                    
  37.                     destino.disabled = true;
  38.                     destino.readOnly = true;
  39.                    
  40.                     destino2.disabled = true;
  41.                     destino2.readOnly = true;
  42.                    
  43.                     destino3.disabled = true;
  44.                     destino3.readOnly = true;
  45.                    
  46.                     destino4.disabled = true;
  47.                     destino4.readOnly = true;
  48.                         }
  49.             });    
  50.         }
  51.     }
pienso que puede ser
arrastre = document.getElementById(arrastre);
if(arrastre.value != "")
data: {valor: arrastre.value},
__________________
Lo imposible solo cuesta un poco mas
  #8 (permalink)  
Antiguo 13/11/2012, 13:24
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 3 meses
Puntos: 155
Respuesta: Cambiar select por un textbox

sta bien no te emplutes

veo esto


Código Javascript:
Ver original
  1. data: {valor: arrastre.options[arrastre.selectedIndex].value}


a ver pruebale asi


Código Javascript:
Ver original
  1. document.getElementById("idtexto").value
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #9 (permalink)  
Antiguo 13/11/2012, 13:29
Avatar de jandrogdz  
Fecha de Ingreso: julio-2012
Ubicación: public $Guadalajara
Mensajes: 397
Antigüedad: 11 años, 10 meses
Puntos: 12
Respuesta: Cambiar select por un textbox

No men ya lo probe asi y no m funcion no carga los datos solo se borran
__________________
Lo imposible solo cuesta un poco mas
  #10 (permalink)  
Antiguo 13/11/2012, 13:52
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 3 meses
Puntos: 155
Respuesta: Cambiar select por un textbox

a ver con en metodo val

http://api.jquery.com/val/
http://stackoverflow.com/questions/4...x-using-jquery

nos obtiene de un textbox el valor
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #11 (permalink)  
Antiguo 02/06/2015, 07:47
 
Fecha de Ingreso: julio-2012
Mensajes: 18
Antigüedad: 11 años, 9 meses
Puntos: 0
Respuesta: Cambiar select por un textbox

Estimado jandrogdz, quería saber si pudiste solucionar tu inconveniente ya que yo necesito hacer lo mismo, en vez de utilizar un select para autocompletar necesito hacerlo mediante un inpun text, pero no se como realizarlo. Te agradecería muchisimo si me apoyas.

Saludos, Gracias

Etiquetas: select, textbox, usuarios
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 01:08.