Foros del Web » Programando para Internet » Javascript »

Problema con formulario

Estas en el tema de Problema con formulario en el foro de Javascript en Foros del Web. Os voy a poner una simulacion de lo q me pasa: Yo tengo este campo de texto: <form name="formu"> <input name="final" type="text" value="" size="3" onclick="solucion('final')"> ...
  #1 (permalink)  
Antiguo 25/07/2005, 10:39
 
Fecha de Ingreso: enero-2004
Mensajes: 22
Antigüedad: 20 años, 3 meses
Puntos: 1
Pregunta Problema con formulario

Os voy a poner una simulacion de lo q me pasa:

Yo tengo este campo de texto:

<form name="formu">
<input name="final" type="text" value="" size="3" onclick="solucion('final')">
</form>


Y lo q kiero es q la funcion solucion coja

function solucion(nombre){
var resultado=15;
document.formu.nombre.value = resultado;


Pues bien, el problema es q al hacer el document.form.nombre.value=resultado, falla porq no reconoce nombre, y en cambio si directamente pongo final, q es el nombre del campo funciona.

¿Como puedo hacer para q el document.formu.... funcione??

Gracias
  #2 (permalink)  
Antiguo 25/07/2005, 15:53
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
no entiendo, claro que no reconoce el campo, el campo con el nombre "nombre" no existe. No se lo que quieres hacer.

Por cierto, para cumplir mas los estandares deberias ponerles un id y referenciarlos con document.getElementById("...") o si no puedes document.getElementsByName("..")[0].
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #3 (permalink)  
Antiguo 26/07/2005, 05:24
 
Fecha de Ingreso: enero-2004
Mensajes: 22
Antigüedad: 20 años, 3 meses
Puntos: 1
---------------------------------------------------

Última edición por alberzap; 01/06/2010 a las 09:00
  #4 (permalink)  
Antiguo 26/07/2005, 07:10
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Algo asi, creando un nuevo campo?

Código PHP:
<script>
function 
solucion(nombre){
    var 
resultado=15;
    
//creamos el nuevo campo
    
var campo=document.createElement("INPUT");
    
//colocamos los atributos que queremos
    
campo.setAttribute("type","text");
    
campo.setAttribute("name",nombre);
    
campo.setAttribute("value",resultado);
    
//lo añadimos al formulario
    
document.getElementsByName("formu")[0].appendChild(campo);
}
</script>

<form name="formu">
<input name="final" type="text" value="" size="3" onclick="solucion('nuevo')"> 
</form> 
Si no es, no se a lo que te refieres.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #5 (permalink)  
Antiguo 26/07/2005, 07:24
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 2 meses
Puntos: 6
Desde luego, alberzap, te explicas fatal. Arriba te ha faltado poner los inputs con distintos nombres para que se te entendiera (por eso derkenuke te ha pasado un método para crear elementos, porque veía que te faltaban inputs de texto). Yo te he entendido.

Lo que tú quieres es lo siguiente:
document.formu.elements[nombre].value = resultado;

Hale, te cobro 5$ (u_goldman también cobraba, y menos , pero yo te estoy cobrando un plus por el trabajo de adivinar lo que quieres).
  #6 (permalink)  
Antiguo 26/07/2005, 12:13
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
dios mio... eres vidente o es que ya os conoceis?

juasss
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
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 03:23.