Na verdade, para enviar o formulário, sua
input
tipo precisa ser submit
, não button
. Usando um
button
tag também funcionaria. <input type="submit" id="submitDetails" class="submitDetails" name="submitDetails" value="Submit Your Details" />
A menos que você tenha algum código javascript que esteja acionando o envio do formulário.
O atributo de ação também é obrigatório de acordo com a especificação, mas mesmo sem ela, a maioria dos navegadores assume que a URL de ação é a página atual.
Editar :Se você deseja enviar os dados do formulário sem recarregar a página, você tem para usar ajax ou colocar o formulário inteiro em um
iframe
. (Por favor, faça isso com ajax). Caso contrário, clicando no
input[type=button]
realmente não vai fazer nada. Os dados do usuário são os dados reais do seu formulário, você pode capturá-los usando:
$(document).ready(function() {
$(".submitDetails").click(function(e) {
e.preventDefault();
// See Teez answer, I wasn't aware of this.
var dataToSend = $("#userDetails").serializeArray();
$.ajax({
url: "userDetailTest.php",
type: "POST",
data: dataToSend,
cache: false,
success: function(php_output)
{
$(".overallSummary").html(php_output);
}
});
});
});