Ver Mensaje Individual
  #7 (permalink)  
Antiguo 04/11/2007, 08:44
salbefe
 
Fecha de Ingreso: noviembre-2007
Mensajes: 2
Antigüedad: 17 años
Puntos: 0
Re: Actualizar un campo de texto con javascript

Hola,

Gracias por vuestras respuestas. He probado lo que ha comentado JavierB y es lo unico que funciona realmente tanto en Firefox, como en Safari como en IE. La verdad es que no se que pasa con la función setAttribute en Firefox y en Safari.

He estado buscando en google pero no encuentro nada, aunque lo que realmente no entiendo es que setAttribute funciona en unos casos y en otros no.

En el siguiente código, se supone que cuando le das al botón debería de sumar dos al número que hay en el input field. Pues bien, aquí setAttribute funciona, si el input field esta inicialmente vacio y cada vez que le das al botón va sumando dos sin ningún problema.

Pero si después de darle al botón, editas lo que hay en el input field, poniendo otro número y le vuelves a dar, en principio debería de sumar dos al número que hayas puesto; pues bien, ESTO NO FUNCIONA con setAttribute. En cambio si funciona si con la linea que esté descomentada justo debajo de settAttribute.

No tengo ni idea del porque y google no me aclara nada. :(

<html>
<head>
<title>Prueba</title>
<script language="JavaScript">


function do_update(objeto,incremento){

valorActual = parseFloat(document.getElementById(objeto).value);

if(isNaN(valorActual)==true)
{

valorActual = 0;

}

valorActual = parseFloat(valorActual) + incremento;

if(incremento == 0)
{
valorActual = 0;
}

//document.getElementById(objeto).setAttribute("valu e",valorActual); Esta linea funiona pero si editas el resultado después de haber pulsado el botón, después ya no se actualiza
document.getElementById(objeto).value = valorActual;


}

</script>
</head>
<body>
<input type='text' value='' id='p0'>
<input type='button' value='+2' onClick="do_update('p0',2);">
</body>
</html>