Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/02/2011, 05:19
Avatar de SirDuque
SirDuque
 
Fecha de Ingreso: febrero-2009
Ubicación: Paso del Rey, Buenos Aires, Argentina
Mensajes: 975
Antigüedad: 15 años, 9 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