Estoy utilizando jQuery para enviar un formulario cuando se hace clic en un botón. Luego me gustaría probar el valor del botón, sin embargo, esto no se envía en Safari y Chrome. ¿Por qué? Hay un trabajo alrededor?El valor de HTML Form Button no se publicó en Safari y Chrome
Prueba el siguiente código en el IE/FF para ver que funciona, y luego probarlo en Safari/Chrome para ver que no es así:
ButtonPostTest.php:
<?php
if(isset($_POST['testBtn'])) {
echo $_POST['testBtn'];
}
?>
<html>
<head>
<title></title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('#btn').click(function() {
$('form').submit(); // submit the form
});
});
</script>
</head>
<body>
<form action="" method="post">
<button id="btn" class="page-btn" type="submit" name="testBtn" value="Yes Button value is posted!">POST IT!</button>
</form>
</body>
</html>
ACTUALIZACIÓN:
lo mismo ocurre con input
:
<input id="btn" class="page-btn" type="submit" name="testBtn" value="Post this"></input>
Además, esto es solo un problema cuando se envía mediante jQuery .submit()
- sin esto, se envía bien con el botón o la entrada.
Gracias esto me señaló en la dirección correcta. Me estaba volviendo loco, ni siquiera sospechaba el jquery.submit que había agregado antes ... Encontré esta explicación del comportamiento y por qué sucede: http://stackoverflow.com/a/1709352/76672 – Jake
Parece que funciona Está bien en Chrome (Linux Mint). Ha estado utilizando un fork de Webkit desde hace bastante tiempo, por lo que tal vez esté solucionado en Chrome. –