JQuery - Autocomplete - Pasar otro parametro distinto de "term"

   
Vista:

Autocomplete - Pasar otro parametro distinto de "term"

Publicado por Fernando (10 intervenciones) el 09/06/2012 00:24:08
Estimada gente,

vuelvo con otro de mis problemas, que durante bastante tiempo no he podido encontrar solucion,
necesito pasar un segundo parametro de jquery, para que el formulario que hace la consulta sql
pueda utilizarlo para aplicarlo a la clausula where, pero no he podido encontrar en ningun lado la solucion, si alguien alguna vez ya tuvo este problema, agradezco que me oriente un poco, desde ya.

Por un lado tengo el siguiente codigo:

1
2
3
4
5
6
7
8
	    $('#txtcuerem').autocomplete({
       	    	source: 'buscacuentas.php',
       	    	minLength: 3,
       	    	delay: 1000,
            	select: function(event, ui){
            	$("#idcuerem").val(ui.item.id);
            	}
          });

en el que he intentado por ejemplo cosas como "buscacuentas.php?parametro", sin ningun exito.
cabe aclarar que el parametro es el valor de un "input".

Y por otro el form buscacuentas.php:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?
include("conectar_base.php");
 
   $link=db_connect();
 
   $term = $_GET['term'];
 
   $cmd="select top 100 ciden,civa,cdeno,ccuen from cuentas where cdeno like '%".$term."%' order by cdeno";
 
   $rs2 = odbc_exec($link, $cmd);
   $datos=array();
	while ($row = odbc_fetch_array($rs2))
    {
 
     $datos[] = array("value"=>$row['cdeno']."(".$row['ccuen'].")","id"=>$row['ciden'],"cui"=>$row['civa']);
 
    }
    echo json_encode($datos);
 
?>

Algunas ideas?
Gracias !!!
Saludos
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Autocomplete - Pasar otro parametro distinto de

Publicado por xve (557 intervenciones) el 09/06/2012 19:55:05
Hola Fernando, no he utilizando nunca el plugin autocomplete, pero una manera que se me ocurre, es que pases ese parámetro que deseas en modo get... seria algo así:
1
2
3
4
5
6
7
8
$('#txtcuerem').autocomplete({
    source: 'buscacuentas.php?term=x',
    minLength: 3,
    delay: 1000,
    select: function(event, ui){
    $("#idcuerem").val(ui.item.id);
    }
});

Espero que te sirva...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Autocomplete - Pasar otro parametro distinto de

Publicado por Fernando (10 intervenciones) el 13/06/2012 21:29:01
Hola xve!

en realidad el parametro "term", esta bien, necesito capturar un valor que esta en un input
y pasarlo via jquery, lo ultimo que probe es esto, que muestro a continuacion, pero no funciona !

var valpasa= $("#txtgrano").val();
->esto agregue

$('#txtporhum').autocomplete({
source: 'buscahumedades.php?valpasa', // el valor "valpasa" nunca llega a buscahumedades
minLength: 1,
delay: 1000,
select: function(event, ui){
$("#idporhum").val(ui.item.id);
}
});
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Autocomplete - Pasar otro parametro distinto de

Publicado por xve (557 intervenciones) el 13/06/2012 23:07:13
Hola Fernando, te tiene que llegar... como capturas el valor "valpasa"? porque es un valor, no una variable, verdad?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Autocomplete - Pasar otro parametro distinto de

Publicado por Fernando (10 intervenciones) el 14/06/2012 00:12:44
uhm, si estoy viendo que el problema esta en capturar con jquery el valor del input "txtgrano",
al parecer esta linea var valpasa= $("#txtgrano").val(); seria el problema.

la variable "valpasa" parece que no existe cuando hago el llamado "source: 'buscahumedades.php?valpasa"

Se te ocurre como capturar el valor y que la variable este disponible cuando hago el llamado?

Fernando
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Autocomplete - Pasar otro parametro distinto de

Publicado por Fernando (10 intervenciones) el 14/06/2012 00:55:15
Hola xve!

ya aclare algunas cosas, logre que el siguiente codigo funcione:

$('#txtporhum').autocomplete({
source: 'buscahumedades.php?valpasa='+valpasa,

Lo que no logre, es guardar el valor que quiero en la variable "valpasa"
estoy ejecutando el siguiente codigo

Declaro global la variable:

<script type="text/javascript">
var valpasa=00;


Y luego quiero capturarla asi:

$("txtgrano").focusout(function() {
valpasa= $("#txtgrano").val();
});

Pero parece que esto ultimo no funciona o hay algo que no comprendo de las variables,
por que la variable "valpasa", siempre vale cero !

Tenes alguna idea por que?

saludos !!
Fernando
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Autocomplete - Pasar otro parametro distinto de

Publicado por xve (557 intervenciones) el 14/06/2012 08:23:30
Hola Fernando, nos puedes mostrar la parte del formulario donde esta el id txtgrano?
No se muy bien que es...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Autocomplete - Pasar otro parametro distinto de

Publicado por Fernando (10 intervenciones) el 14/06/2012 17:30:04
Hola xve,
te paso parte del codigo (ya que es largo), a ver si se logra entender un poco mejor,
en negrita el codigo que no funciona!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
<?
session_start();
?>
<html>
<head>
<title>Carga Cartas de Porte</title>
 
 
<script type="text/javascript">
      var valpasa=00;
 
          $('#txtgrano').autocomplete({
       	    	source: 'buscagranos.php',
       	    	minLength: 3,
       	    	delay: 1000,
            	select: function(event, ui){
            	$("#idgrano").val(ui.item.id);
            	}
          });
 
          //alert(valpasa);    
          //var valpasa= $("#txtgrano").val();
          //var valpasa=23;
 
          $('#txtporhum').autocomplete({
       	    	source: 'buscahumedades.php?valpasa='+valpasa,
       	    	minLength: 1,
       	    	delay: 1000,
            	select: function(event, ui){
            	$("#idporhum").val(ui.item.id);
            	}
          });
 
          $("txtgrano").focusout(function() {
            valpasa= $("#txtgrano").val();
 
          // si lo igualara con un valor fijo tampoco funciona, por ejemplo, valpasa=23
 
          });
          
        });
</script>
 
 
<script>
	$(function() {
		$( "#tabs" ).tabs();
	});
</script>
</head>
<body>
 
 
<form id="alta_cp" name="alta_cp" method="post" action="procesaalta_cp.php">
 
  <div id="cabecera">
    Registro de Cartas de Porte.
  </div>
 
<div id="tabs">
	<ul>
		<li><a href="#tabs-1">Granos Transportados</a></li>
		<li><a href="#tabs-2">Datos Auxiliares</a></li>
		<li><a href="#tabs-3">Destino</a></li>
	</ul>
 
<div id="tabs-1">
 
<span class="left">
    	<label>Grano</label>
         <input type="text"  id="txtgrano" name="txtgrano" size="15" value=
         "<?
	  	  if (isset($_SESSION['campo13']))
		   {
		    echo $_SESSION['campo13'];
		   }
		  else {
			echo "";
		   }   
		 ?>"
		  />
</span>
 
 
  <span class="left">
       <label>Humedad</label>
       <input type="text" name="txtporhum" id="txtporhum" maxlength="10" size="10" value=
       "<?
	    if (isset($_SESSION['campo62']))
		 {
		  echo $_SESSION['campo62'];
		 }   
	     ?>" />
    </span>
 
 
  </div>
</div>
 
</form>
 
</body>
</html>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve

Autocomplete - Pasar otro parametro distinto de

Publicado por xve (557 intervenciones) el 15/06/2012 07:22:48
Hola Fernando, creo que el problema, lo tienes en el evento focusout(), ya que no se ejecuta hasta que pierde el foco... prueba a cambiar esta linea:
1
source: 'buscahumedades.php?valpasa='+valpasa,

por esta:
1
source: 'buscahumedades.php?valpasa='+$("#txtgrano").val(),

y elimina el código del evento focusout()

Coméntanos, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Autocomplete - Pasar otro parametro distinto de

Publicado por Fernando (10 intervenciones) el 15/06/2012 22:12:08
Hola xve !

gracias por el aporte,
no funciono, y me parece que es debido a que esta linea:
source: 'buscahumedades.php?valpasa='+$("#txtgrano").val(),
se ejecuta al cargarse el formulario, asi que esta linea $("#txtgrano").val() ,
siempre me devuelve cero!

Les paso la solucion, que dicho sea de paso no es mia, si no de otro flaco, por si a alguien
le pasa lo mismo, que consiste en pasarle parametros extras al autocomplete:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$('#txtporhum').autocomplete({
            source: function(request, response) {
            $.ajax({
            url: "buscahumedades.php",
            dataType: "json",
            data: {
              term : request.term,
              valpasa : $("#idgrano").val()
             },
            success: function(data) {
                 response(data);
                  }
                  });
                  },
                  minLength: 2
             });


saludos !!!
Fernando
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Autocomplete - Pasar otro parametro distinto de

Publicado por Claudio Lillo (1 intervención) el 27/07/2014 18:31:31
Gracias por la solución!! me funcionó perfecto!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Autocomplete - Pasar otro parametro distinto de

Publicado por benito (1 intervención) el 17/05/2014 01:54:52
El valor del siguiente parametro el que vale 0 es el que tiene al cargar la pagina, no se obtiene dinamicamente
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar