Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Quiero controlar esta funcion por evento.

Estas en el tema de Quiero controlar esta funcion por evento. en el foro de Frameworks JS en Foros del Web. Hola chicos, tengo una funcion que saque de una pagina, como usa Jquery no entiendo ni H. Esta crea lo que le pida, al hacer ...
  #1 (permalink)  
Antiguo 11/02/2011, 05:19
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 2 meses
Puntos: 89
Quiero controlar esta funcion por evento.

Hola chicos, tengo una funcion que saque de una pagina, como usa Jquery no entiendo ni H.
Esta crea lo que le pida, al hacer click en X lugar, actualmente estoy creando mas y mas campos.
Lo que me gustaria que en ves de hacer click fuece con un evento, onFocus=
haci cuando genera un campo nuevo, y altaveo cuando hace focus en el campo recien creado crea otro para continuar.

Bueno esto es el codigo:

Código Javascript:
Ver original
  1. jQuery.fn.generaNuevosCampos = function(indice){
  2.         $(this).each(function(){
  3.             elem = $(this);
  4.             elem.data("indice",indice);
  5.            
  6.             elem.click(function(e){
  7.                 e.preventDefault();
  8.                 elem = $(this);
  9.                 indice = elem.data("indice");
  10.                 var nextindice;
  11.                 var tilde;
  12.                 tilde="'";
  13.                 nextindice= indice + 1;
  14.       texto_insertar =' Ak genero lo que quiero, lo borre por que es mucho';
  15.                 indice ++;
  16.                 elem.data("indice",indice);
  17.                 nuevo_campo = $(texto_insertar);
  18.                 elem.before(nuevo_campo);
  19.             });
  20.         });
  21.         return this;
  22.     }
  23.     $(document).ready(function(){
  24.         $("#mascampos").generaNuevosCampos(2);
  25.         });

en el HTML tengo esto:

Código HTML:
Ver original
  1. <?php
  2. session_start();
  3. if(!isset($_SESSION['opera']))header("location: ../login.php");
  4. ?>
  5. <meta http-equiv="Content-Type" content="text/html; charset=latin1" />
  6. <!-- Inicio de Scripts -->
  7. <script type="text/javascript" src="./venta/ajax_framework.js"></script>
  8. <script src="shortcuts.js" type="text/javascript"></script>
  9. <script src="jquery-1.4.1.min.js" type="text/javascript"></script>
  10. <script src="newcam.js" type="text/ecmascript"></script>
  11. <script language="javascript" src="script.js"></script>
  12. <!-- Fin Scripts inicio Style Maestro -->
  13. <link rel="stylesheet" href="css/style.css" type="text/css" />
  14. <style type="text/css">
  15. <!--
  16. a:link {
  17.     text-decoration: none;
  18. }
  19. a:visited {
  20.     text-decoration: none;
  21. }
  22. a:hover {
  23.     text-decoration: none;
  24. }
  25. a:active {
  26.     text-decoration: none;
  27. }
  28. -->
  29. </style></head>
  30.  
  31. <BODY style="background-color: transparent;"  >
  32. <form action="venta_.php" name="venta" method="post">
  33. <div align="center">
  34.   <table width="830" border="1">
  35.   <tr class="fuentea">
  36.     <td width="844"><input type="hidden" name="fechora" value="<?php    
  37.     date_default_timezone_set('America/Argentina/Buenos_Aires');
  38.     $hora=date("Y-m-d H:i:s");
  39.     echo $hora; ?>">F/Pago
  40.       :
  41.       <select name="fp" id="fp">
  42.         <option value="0" selected="selected"><strong>C/C</strong></option>
  43.         <option value="1">EF</option>
  44.       </select>
  45.       <br />
  46.       <br />
  47.       Socio N&ordm;:
  48.       <input name="socio" id="socio" type="text" onKeyUp="javascript:autosuggest()" autocomplete="off"/>
  49.       <div id="results"> </div>    Nombre y Apellido:
  50.       <input type="text" name="nombre" id="nombre" size="45" readonly/>
  51.       <br />
  52.       </label>
  53.       <table width="100%">
  54.         <tr>
  55.           <td width="8%"><div align="left">Cant.</div></td>
  56.           <td width="15%"><div align="center">C&oacute;digo</div></td>
  57.           <td width="53%"><div align="center">Descripci&oacute;n del producto</div></td>
  58.           <td width="13%"><div align="right">P./Unidad</div></td>
  59.           <td width="11%"><div align="center">Total</div></td>
  60.         </tr>
  61.         <table width="100%">
  62.  
  63.  
  64.     <tr>
  65.     <td><a onClick="id1.value='';subt1.value='0';can1.value='';cod1.value='';des1.value='';uni1.value='0';ppp1.value='';totalll(); document.venta.can1.removeAttribute('readonly' , 'readonly' , false);document.venta.cod1.removeAttribute('readonly' , 'readonly' , false);document.venta.can1.focus()"href="#" class="fuentea" >(-) </a>
  66.     <input type="text" name="can1"  id="can1" size="2" maxlength="2" autocomplete="off" onFocus="nextfield ='cod1';" onKeyPress="return numbersonly(this, event)"/>    
  67.     </td><td>
  68.     <input name="cod1" type="text" id="cod1" size="14" maxlength="13" autocomplete="off"  onKeyDown="buscar(this);return numbersonly(this, event)" onFocus="nextfield ='des1';"/>
  69.     </td><td>
  70.     <input name="des1" type="text" id="des1" size="55" maxlength="50" autocomplete="off" onFocus="nextfield ='can2';completar(cod1,uni1,des1,id1,ppp1);document.venta.can1.setAttribute('readonly' , 'readonly' , false);document.venta.cod1.setAttribute('readonly' , 'readonly' , false);sumar(can1,uni1,subt1); totalll(); jump(can2);" readonly="readonly"/>
  71.     <input type="hidden" name="ppp1" id="ppp1"/><input type="hidden" name="id1" id="id1" /><input type="hidden" name="filas" id="filas" value="1" />
  72.     </td><td>
  73.     <input name="uni1" type="text" id="uni1" size="6" maxlength="4" autocomplete="off" value="0" readonly="readonly"/>
  74.     </td><td>
  75.     <input name="subt1" type="text" id="subt1" value="0" size="6" maxlength="5" readonly="readonly" autocomplete="off"/>
  76.     </td></tr>
  77.      <tr id="mascampos"><a href="#">CLIC AQUI PARA CREAR MAS CAMPOS</a></tr>
  78.      <tr>
  79.     <td></td>
  80.     <td></td>
  81.     <td></td>
  82.     <td></td>
  83.     <td><input type="text" name="total5" id="total5" size="6" value="0" autocomplete="off" readonly="readonly"/></td>
  84.   </tr>
  85.       </table>
  86.  
  87.       <div align="right">
  88.         <input type="reset" name="cancel" id="cancel" value="Cancelar" />
  89.         <input type="submit" name="done" value="Emitir">
  90.         <br />
  91.       </div></td>
  92.   </tr>
  93.  
  94.  
  95.   <input type="text" onFocus="jQuery.fn.generaNuevosCampos;"> <br>
  96. </div>
  97. </form>
  98.  
  99. <p>&nbsp;</p>
  100.  
  101. </body>
  102. </html>



Gracias por pegarle una ojeada ;)
__________________
Mono programando!
twitter.com/eguimariano
  #2 (permalink)  
Antiguo 11/02/2011, 05:42
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola, SirDuque

Muevo tu tema al foro de Frameworks y Plugins Javascript desde Javascript.

Saludos,
  #3 (permalink)  
Antiguo 02/03/2011, 16:24
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 2 meses
Puntos: 89
Respuesta: Quiero controlar esta funcion por evento.

Antes de repostear prefiero revivir......

Chicos, utilizo esta funcion para generar una nueva fila de campos....
quiero agregar esta funcion a distintos campos, en especial en el evento onfocus. quiero que cada vez que agan onFocus en (name)"x"; "x1";"x2";"x3";"x4"..... y continua. Genere otra fila de campos.

Se entienede?.... bueno espero que alguien me pueda ayudar.!
__________________
Mono programando!
twitter.com/eguimariano
  #4 (permalink)  
Antiguo 02/03/2011, 16:56
Avatar de SirDuque  
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 2 meses
Puntos: 89
Respuesta: Quiero controlar esta funcion por evento.

Solucion
Código HTML:
Ver original
  1. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  2. <title>Documento sin t&iacute;tulo</title>
  3. </head>
  4. <script type="text/javascript" src="jquery-1.4.1.min.js"></script>
  5.  
  6. emails=0;
  7. function agregar() {
  8.     emails=emails+1;
  9.     $("#campos").append('<li class="email'+emails+'"><input type="text" name="email[]" onFocus="agregar();" size="25" />&nbsp;&nbsp;<a href="#" onclick="javascript:borrar('+emails+');">Borrar</a></li>');
  10. }
  11.  
  12.  
  13. <div id="campos"></div>
  14. <input type="button" name="button" onClick="agregar()"  onFocus=""value="agregar">
  15. </body>
  16. </html>



FUENTE
__________________
Mono programando!
twitter.com/eguimariano

Etiquetas: controlar, funcion, eventos
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:33.