Foros del Web » Programando para Internet » Jquery »

Ayuda! Con JQUERY

Estas en el tema de Ayuda! Con JQUERY en el foro de Jquery en Foros del Web. si tengo 100 Formularios distintos en un mismo archivo .html cada uno con su ID como Hago para NO tener 100 funciones de jquery cada ...
  #1 (permalink)  
Antiguo 06/02/2011, 10:25
 
Fecha de Ingreso: noviembre-2010
Mensajes: 42
Antigüedad: 14 años
Puntos: 2
Busqueda Ayuda! Con JQUERY

si tengo 100 Formularios distintos en un mismo archivo .html cada uno con su ID como Hago para NO tener 100 funciones de jquery cada una con el ID del formulario???? deberia haber una forma de pasarle como parametro el id a 1 sola funcion pero noc como. Alguna Idea???
  #2 (permalink)  
Antiguo 06/02/2011, 10:55
 
Fecha de Ingreso: febrero-2011
Mensajes: 33
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Ayuda! Con JQUERY

hay varias opciones, pero desde donde llamas a la funcion de jquery?que hacen esas funciones?

probaste con $(this) de toda la vida?

ejemplo tengo 100 formularios y jquery realiza la misma operacion para todos pero cada con sus diferentes datos.

Le doy clase a los formularios ".claseform"

jquery:
Código:
$('.claseform').click(function{
$(this).hide(); // esconde el elemento al que se le haya hecho click
});
  #3 (permalink)  
Antiguo 06/02/2011, 18:18
 
Fecha de Ingreso: noviembre-2010
Mensajes: 42
Antigüedad: 14 años
Puntos: 2
Respuesta: Ayuda! Con JQUERY

Esto es lo que tengo actualmente :

Código PHP:
Ver original
  1. <?
  2. include("controladorPrincipal.php");
  3.  
  4. if ($_POST['text']){
  5.     $noticia->registrar($_POST['correo'],$_POST['text'],$_POST['para']);
  6. }
  7.    
  8.         echo '<table class="noticiaTodo">';
  9.                         $noticia->listar(20);
  10.                    
  11.                         while($row=$noticia->row()){
  12.                         $album->correo=$row['correo'];
  13.                         $album->listarPorUser();
  14.                         $rowAlbum=$album->row();
  15.                        
  16.                             echo "<script>
  17.                            
  18.                             $(document).ready(function() {
  19.                             $('#".$row['codigo']."M').load('controladorMeGusta.php?codigo=".$row['codigo']."');
  20.                             $('#".$row['codigo']."M').submit(function() {
  21.                                 $.ajax({
  22.                                 type: 'POST',
  23.                                 url: $(this).attr('action'),
  24.                                 data: $(this).serialize(),
  25.                                 success: function(data) {
  26.                                 $('#".$row['codigo']."M').fadeOut(1).html(data).fadeIn('slow');
  27.  
  28.                                         }
  29.                                     })
  30.                                     return false;
  31.                                 });
  32.                             }) </script>";
  33.                             echo "<script>
  34.                             $(document).ready(function() {
  35.                             $('#".$row['codigo']."N').load('controladorNoGusta.php?codigo=".$row['codigo']."');
  36.                             $('#".$row['codigo']."N').submit(function() {
  37.                                 $.ajax({
  38.                                 type: 'POST',
  39.                                 url: $(this).attr('action'),
  40.                                 data: $(this).serialize(),
  41.                                 success: function(data) {
  42.                                 $('#".$row['codigo']."N').fadeOut(1).html(data).fadeIn('slow');
  43.                                
  44.                                         }
  45.                                     })
  46.                                     return false;
  47.                                 });
  48.                             }) </script>";
  49.                             echo "<script>
  50.                             $(document).ready(function() {
  51.                             $('#".$row['codigo']."cB').load('controladorComentariosB.php?codigo=".$row['codigo']."');
  52.                             $('#".$row['codigo']."cA').submit(function() {
  53.                                 $.ajax({
  54.                                 type: 'POST',
  55.                                 url: $(this).attr('action'),
  56.                                 data: $(this).serialize(),
  57.                                 success: function(data) {
  58.                                 $('#".$row['codigo']."cB').html(data);
  59.                                                             document.getElementById('".$row['codigo']."cA').style.display='none';
  60.                                                             a".$row['codigo']."=0;
  61.                                                             document.formuComentarios".$row['codigo'].".textAreaComentarios".$row['codigo'].".value='';
  62.  
  63.                                         }
  64.                                     })
  65.                                     return false;
  66.                                 });
  67.  
  68.                             })
  69.                            
  70.                            
  71.                             </script>";
  72.                             echo "<script>
  73.                                 a".$row['codigo']."=0;
  74.                                 function comentar".$row['codigo']."(){
  75.                                     if(a".$row['codigo']."==0){
  76.                                        
  77.                                     document.getElementById('".$row['codigo']."cA').style.display='block';
  78.                                     document.formuComentarios".$row['codigo'].".textAreaComentarios".$row['codigo'].".focus();
  79.                                     a".$row['codigo']."++;
  80.                                     }else{
  81.                                         document.getElementById('".$row['codigo']."cA').style.display='none';
  82.                                         a".$row['codigo']."=0;
  83.                                         }
  84.                                        
  85.                                 }
  86.                             </script>";
  87.                             //para q al darle click a la fecha de la Noticia desaparesca y aparesca la fecha en otro formato :).
  88.                             echo "<script>
  89.                                 fa".$row['codigo']."=0;
  90.                                 function fecha".$row['codigo']."(){
  91.                                     if(fa".$row['codigo']."==0){
  92.                                     document.getElementById('fecha".$row['codigo']."').style.display='none';
  93.                                     document.getElementById('fechaHora".$row['codigo']."').style.display='block';
  94.                                     fa".$row['codigo']."++;
  95.                                     }else{
  96.                                     document.getElementById('fechaHora".$row['codigo']."').style.display='none';
  97.                                     document.getElementById('fecha".$row['codigo']."').style.display='block';
  98.                                         fa".$row['codigo']."=0;
  99.                                         }
  100.                                        
  101.                                 }
  102.                             </script>";
  103.                                
  104.  
  105.                             $user->correo=$row['correo'];
  106.                             $user->consultar();
  107.                            
  108.                             $rowUser=$user->row();
  109.                            
  110.                                 echo '<tr><td class="imgNoticiaPerfil">';
  111.                                 echo '<img class="imgFotoPerfilNoticia" src="'.$rowUser['fotoNoticia'].'" />';
  112.                                 echo "</td><td class='noticia'>";
  113.                                 echo "<a href='principal.php?id=".$rowUser['correo']."&tipo=todos'><b class='nombreUser'>".$rowUser['nombre']."</b></a><br /><textarea readonly class='textArea'>".$row['noticia']."</textarea>";
  114.                                 echo"<form style='float:left' method='post' id='".$row['codigo']."M' action='controladorMeGusta.php?codigo=".$row['codigo']."'>";
  115.                                 echo "</form>";
  116.                                 echo"<form style='float:left' method='post' id='".$row['codigo']."N' action='controladorNoGusta.php?codigo=".$row['codigo']."'>";
  117.                                 echo"</form>";
  118.                                 echo "<input class='btnsNoticiaComentario' name='comentario' type='submit' value='Comentar' onclick='comentar".$row['codigo']."()'/>";
  119.                                 $total = time()-$row['fecha'];
  120.                                 $fullDays = floor($total/(60*60*24));
  121.                                 $fullHours = floor(($total-($fullDays*60*60*24))/(60*60));
  122.                                 $fullMinutes = floor(($total-($fullDays*60*60*24)-($fullHours*60*60))/60);
  123.                                 $fullSegundos = floor($total-($fullDays*60*60*24)-($fullHours*60*60)-($fullMinutes*60));
  124.                                 echo "<div class='tiempoNoticia' onclick='fecha".$row['codigo']."()'>";
  125.                             echo "<span id='fecha".$row['codigo']."'>";
  126.                                 if($fullDays==0 AND $fullHours==0 AND $fullMinutes==0){
  127.                                 echo "Hace: $fullSegundos"."seg";
  128.                                     }elseif($fullDays==0 AND $fullHours==0){
  129.                                         echo "Hace:  ".$fullMinutes." min y ".$fullSegundos." seg";
  130.                                         }elseif($fullDays==0){
  131.                                            
  132.                                             echo "Hace:  ".$fullHours." hr ".$fullMinutes." min y ".$fullSegundos." seg";
  133.                                             }elseif($fullDays==1){
  134.                                                 echo "Hace $fullDays dia y $fullHours horas";
  135.                                                 }else{
  136.                                                    
  137.                                                     echo "Hace $fullDays dias y $fullHours horas";
  138.                                                     }
  139.                                 echo "</span>";            
  140.                                 echo "<span style='display:none' id='fechaHora".$row['codigo']."'>";               
  141.                                 echo $row['fechaHora'];
  142.                                 echo "</span>";
  143.                                 echo "</div>";
  144.                                 echo"<form style='display:none; background:#C1DFED' name='formuComentarios".$row['codigo']."' method='post' id='".$row['codigo']."cA' action='controladorComentariosB.php?codigo=".$row['codigo']."'>
  145.                                 <input type='hidden' name='comentario' value='true' />
  146.                                 <textarea name='textAreaComentarios".$row['codigo']."' id='textArea".$row['codigo']."' class='textAreaComentarios'></textarea>
  147.                                 <div align='right'><input type='submit' class='btnComentar' name='btnComentar".$row['codigo']."' value='Guardar' /></div>
  148.                                 </form>";
  149.                            
  150.                                 echo"<form style='background:#FFFFFF; margin-left:-10px; font-size:7px' method='post' id='".$row['codigo']."cB' action='controladorComentariosB.php?codigo=".$row['codigo']."'>
  151.                                 </form>";
  152.                             echo "</td></tr>";
  153.                            
  154.                         }
  155.     echo '</table>';                               
  156.                              
  157.                                    
  158. ?>
  159. </body>
  160. </html>
Lo que quiero evitar el el Ciclo repetitivo para los script.

Última edición por leonardo308; 06/02/2011 a las 18:23
  #4 (permalink)  
Antiguo 06/02/2011, 21:23
 
Fecha de Ingreso: febrero-2011
Mensajes: 33
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Ayuda! Con JQUERY

Me mataste yo soy de .net, php es el demonio.

este...

no entiendo partes de tu codigo como:
function comentar".$row['codigo']."(){}

porque no? function comentar(.$row['codigo'].){}

luego lo que varia es la clase?
un array que almacene las clases y luego cargas el array por posicion.

lo que veo son diferentes scripts con diferentes acciones, no veo el mismo script para varias cosas en tu codigo

Etiquetas: parametros, formulario
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 15:46.