html mostrar Tipo de entrada de imagen enviar el valor del formulario?



insertar imagen html url (9)

Estoy usando este código para intentar enviar un valor a través del formulario, pero parece que no envía nada ...

Normalmente usaría una casilla de verificación o botones de Radio para múltiples opciones, pero quiero usar una imagen para hacer esto.

¿Este código está mal?

<input id="test1" name="test1" type="image" src="images/f.jpg" value="myValue" alt="" />

Entonces quiero pasar el valor en value = "myValue".

El formulario funciona bien, así que ese no es el problema, solo necesito ayuda con la parte de entrada que no se envía porque sé que funciona.

Gracias


Answer #1

Bueno, si estuviera en tu lugar, haría esto. Tendría un campo oculto y, en función del campo de imagen de entrada, cambiaría el valor del campo oculto (jQuery) y, finalmente, enviaría el campo oculto cuyo valor refleja el campo de la imagen.


Answer #2

Puede usar un botón de opción / casilla de verificación y configurarlo para ocultar el botón en css y luego darle una etiqueta con una imagen.

input[type="radio"] {display: none}
input[type="radio"] + label span {display: block}

Luego en la página:

<input type="radio" name="emotion" id="mysubmitradio" />
        <label for="mysubmitradio"><img src="images/f.jpg" />
    <span>if you need it</span></label>

Y luego configúralo para enviar usando javascript:

document.forms["myform"].submit();

Answer #3

Agrega esto

    name="myvalue"

A tu etiqueta


Answer #4

Para enviar un formulario, puede usar:

<input type="submit">

o

<input type="button"> + Javascript 

Nunca escuché hablar de un tipo tan loco para tratar de enviar un formulario usando una imagen o una casilla de verificación como quieras :))


Answer #5

Usar el tipo = "imagen" es problemático porque la capacidad de pasar un valor está desactivada por alguna estúpida falta de razón. De todos modos, y aunque no es tan personalizable y, por lo tanto, es bonito, puedes usar tus imágenes siempre que sean parte de un tipo = "botón".

<button type="submit" name="someName" value="someValue"><img src="someImage.png" alt="SomeAlternateText"></button>

¡Espero que esto ayude! ^ _ ^


Answer #6

Estaba en el mismo lugar que tú, finalmente encontré una respuesta clara:

<form action="xx/xx" method="POST">
  <input type="hidden" name="what you want" value="what you want">
  <input type="image" src="xx.xx">
</form>

Answer #7

Un tipo de entrada = "imagen" solo define esa imagen como el botón de enviar y no como una entrada que puede transferir un valor al servidor.


Answer #8

Solución:

<form name="frmSeguimiento" id="frmSeguimiento" method="post" action="proc_seguimiento.php">  
    <input type="hidden" name="accion" id="accion"/>


<input name="save" type="image" src="imagenes/save.png" alt="Save" onmouseover="this.src='imagenes/save_over.png';" onmouseout="this.src='imagenes/save.png';" value="Save" onclick="validaFrmSeguimiento(this.value);"/>


function validaFrmSeguimiento(accion)
{
    document.frmSeguimiento.accion.value=accion;

}

Saludos, jp


Answer #9

Algunos navegadores (IIRC es solo algunas versiones de Internet Explorer) solo envían las coordenadas del mapa de imagen (en name.x y name.y) e ignoran el valor. Este es un error.

Las soluciones alternativas son:

  • Tener solo un botón de enviar y usar una entrada oculta para enviar el valor
  • Use botones de envío regulares en lugar de mapas de imágenes
  • Use nombres únicos en lugar de valores y verifique la presencia de name.x / name.y




forms