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 originaljQuery.fn.generaNuevosCampos = function(indice){
$(this).each(function(){
elem = $(this);
elem.data("indice",indice);
elem.click(function(e){
e.preventDefault();
elem = $(this);
indice = elem.data("indice");
var nextindice;
var tilde;
tilde="'";
nextindice= indice + 1;
texto_insertar =' Ak genero lo que quiero, lo borre por que es mucho';
indice ++;
elem.data("indice",indice);
nuevo_campo = $(texto_insertar);
elem.before(nuevo_campo);
});
});
return this;
}
$(document).ready(function(){
$("#mascampos").generaNuevosCampos(2);
});
en el HTML tengo esto:
Código HTML:
Ver original<?php
session_start();
if(!isset($_SESSION['opera']))header("location: ../login.php");
?>
<meta http-equiv="Content-Type" content="text/html; charset=latin1" /> <!-- Inicio de Scripts -->
<script type="text/javascript" src="./venta/ajax_framework.js"></script> <script src="jquery-1.4.1.min.js" type="text/javascript"></script> <!-- Fin Scripts inicio Style Maestro -->
<link rel="stylesheet" href="css/style.css" type="text/css" /> <!--
a:link {
text-decoration: none;
}
a:visited {
text-decoration: none;
}
a:hover {
text-decoration: none;
}
a:active {
text-decoration: none;
}
-->
<BODY style="background-color: transparent;" > <form action="venta_.php" name="venta" method="post"> <table width="830" border="1"> <td width="844"><input type="hidden" name="fechora" value="<?php date_default_timezone_set('America/Argentina/Buenos_Aires');
$hora=date("Y-m-d H:i:s");
echo $hora; ?>">F/Pago
:
Socio Nº:
<input name="socio" id="socio" type="text" onKeyUp="javascript:autosuggest()" autocomplete="off"/> <div id="results"> </div> Nombre y Apellido:
<input type="text" name="nombre" id="nombre" size="45" readonly/> <td width="15%"><div align="center">C
ódigo
</div></td> <td width="53%"><div align="center">Descripci
ón del producto
</div></td> <td width="13%"><div align="right">P./Unidad
</div></td> <td width="11%"><div align="center">Total
</div></td>
<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> <input type="text" name="can1" id="can1" size="2" maxlength="2" autocomplete="off" onFocus="nextfield ='cod1';" onKeyPress="return numbersonly(this, event)"/> <input name="cod1" type="text" id="cod1" size="14" maxlength="13" autocomplete="off" onKeyDown="buscar(this);return numbersonly(this, event)" onFocus="nextfield ='des1';"/> <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"/> <input type="hidden" name="ppp1" id="ppp1"/><input type="hidden" name="id1" id="id1" /><input type="hidden" name="filas" id="filas" value="1" /> <input name="uni1" type="text" id="uni1" size="6" maxlength="4" autocomplete="off" value="0" readonly="readonly"/> <input name="subt1" type="text" id="subt1" value="0" size="6" maxlength="5" readonly="readonly" autocomplete="off"/> <tr id="mascampos"><a href="#">CLIC AQUI PARA CREAR MAS CAMPOS
</a></tr> <td><input type="text" name="total5" id="total5" size="6" value="0" autocomplete="off" readonly="readonly"/></td>
<input type="reset" name="cancel" id="cancel" value="Cancelar" /> <input type="submit" name="done" value="Emitir">
<input type="text" onFocus="jQuery.fn.generaNuevosCampos;"> <br>
Gracias por pegarle una ojeada ;)