JQuery - Capturar idproducto al hacer click en una fila

 
Vista:
sin imagen de perfil
Val: 20
Ha disminuido su posición en 2 puestos en JQuery (en relación al último mes)
Gráfica de JQuery

Capturar idproducto al hacer click en una fila

Publicado por giuli (19 intervenciones) el 15/05/2018 14:55:25
Trabajo con mvc entonces tengo una tabla que se filtra al escribir un nombre de produco:

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
<?php
include_once "../../models/claseProducto.php";
$tipoFiltro=$_POST['tf'];
if (isset($_POST['c'])){
$cadena=$_POST['c'];
if ($cadena!=''){
$P1= new Producto();
if ($tipoFiltro="nombre"){
        $arrayfiltrado=$P1->filtrar($tipoFiltro,$cadena);
     $tabla ="<caption> CATALOGO DE ARTICULOS</caption>

<tr> <th>COD.:</th> <th>DESCRIPCION</th> <th>MARCA</th>
<th>CATEGORIA</th> <th>P/U</th>
</tr>";
       /* No olvide el THEAD y sus TD para formar el encabezado de la tabla */
       /* Contenido de la tabla */
       $tabla .="<tbody>";
       foreach ($arrayfiltrado as $p){
          $tabla .="<tr data-idp='".$p["idproducto"]."'>";
             /* Un TD por cada datos que quieras mostrar; emj con el mail */
             $tabla .="<td>".$p["idproducto"]."</td>";
             $tabla .="<td>".$p["nombre"]."</td>";
             $tabla .="<td>".$p["marca"]."</td>";
             $tabla .="<td>".$p["categoria"]."</td>";
             $tabla .="<td>".$p["precio"]."</td>";
          $tabla .="</tr>";
       }
       $tabla .="</tbody>";
       $tabla .="</table>";
       echo $tabla;
           }}
 
}else
{
   $P1= new Producto();
   $arraycompleto=$P1->listar();
     $tabla ="<caption> CATALOGO DE ARTICULOS</caption>

<tr> <th>COD.:</th> <th>DESCRIPCION</th> <th>MARCA</th>
<th>CATEGORIA</th> <th>P/U</th>
</tr>";
       /* No olvide el THEAD y sus TD para formar el encabezado de la tabla */
       /* Contenido de la tabla */
       $tabla .="<tbody>";
       foreach ($arraycompleto as $p){
          $tabla .="<tr>";
             /* Un TD por cada datos que quieras mostrar; emj con el mail */
               $tabla .="<td>".$p["idproducto"]."</td>";
             $tabla .="<td>".$p["nombre"]."</td>";
             $tabla .="<td>".$p["marca"]."</td>";
             $tabla .="<td>".$p["categoria"]."</td>";
             $tabla .="<td>".$p["precio"]."</td>";
          $tabla .="</tr>";
       }
       $tabla .="</tbody>";
       $tabla .="</table>";
       echo $tabla;
           }
?>

Ese es el script php llamado desde ajax.

Pero para seleccionar el producto no quiero un boton en cada fila quiero hacerle click en cualquier sector de la fila y capturar el id.

En el html simplemente muestro un div de resultado. Tendria que asignarle un id distinto a cada tr? Y como es el codigo para obtenerlo¨?
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
sin imagen de perfil
Val: 20
Ha disminuido su posición en 2 puestos en JQuery (en relación al último mes)
Gráfica de JQuery

Capturar idproducto al hacer click en una fila

Publicado por Giuliano (19 intervenciones) el 16/05/2018 10:46:34
osea si hago:

1
2
3
4
5
)
  $("#resultado").on("click", function(event){
     var id= $(this).find("td").html();
     alert(id);
 });

me muestra siempre 1.

pero si pongo tr no muestra nada y con body tr tampoco:

1
2
3
4
5
)
  $("#resultado tbody tr").on("click", function(event){
     var id= $(this).find("td").html();
     alert(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
Val: 302
Oro
Ha mantenido su posición en JQuery (en relación al último mes)
Gráfica de JQuery

Capturar idproducto al hacer click en una fila

Publicado por xve (673 intervenciones) el 16/05/2018 14:40:11
Hola Giuliano, donde esta definido el id="resultado"?
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
sin imagen de perfil
Val: 20
Ha disminuido su posición en 2 puestos en JQuery (en relación al último mes)
Gráfica de JQuery

Capturar idproducto al hacer click en una fila

Publicado por Giuli (19 intervenciones) el 16/05/2018 14:54:09
Esta definido en la plantilla es un table con id resultado..luego las filas se generan en un php..pero solo los tr y el tbody.
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
sin imagen de perfil
Val: 20
Ha disminuido su posición en 2 puestos en JQuery (en relación al último mes)
Gráfica de JQuery

Capturar idproducto al hacer click en una fila

Publicado por Giuliano (19 intervenciones) el 16/05/2018 15:56:45
1
<table id="resultado"></table>
y este es el php
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
$P1= new Producto();
               $arraycompleto=$P1->listar();
 
                 $tabla ="<caption> CATALOGO DE ARTICULOS</caption>";
             $tabla .="<tbody>";
            $tabla.="<tr> <th>COD.:</th> <th>DESCRIPCION</th> <th>MARCA</th>
            <th>CATEGORIA</th> <th>P/U</th>
            </tr>";
               /* No olvide el THEAD y sus TD para formar el encabezado de la tabla */
               /* Contenido de la tabla */
 
               foreach ($arraycompleto as $p){
                  $tabla .="<tr>";
                     /* Un TD por cada datos que quieras mostrar; emj con el mail */
 
                       $tabla .="<td>".$p["idproducto"]."</td>";
                     $tabla .="<td>".$p["nombre"]."</td>";
                     $tabla .="<td>".$p["marca"]."</td>";
                     $tabla .="<td>".$p["categoria"]."</td>";
                     $tabla .="<td>".$p["precio"]."</td>";
              $tabla .="</tr>";
           }
           $tabla .="</tbody>";
 
           echo $tabla;
               }
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