Właściwie, aby przesłać formularz swoje input
wpisz należy submit
, a nie button
.
Korzystanie z button
tag również zadziała.
<input type="submit" id="submitDetails" class="submitDetails" name="submitDetails" value="Submit Your Details" />
Chyba że masz jakiś kod JavaScript, który uruchamia przesłanie formularza.
Atrybut działania jest również wymagany zgodnie ze specyfikacją, ale nawet bez niej większość przeglądarek zakłada, że URL akcji to bieżąca strona.
Edytuj :jeśli chcesz przesłać dane formularza bez ponownego ładowania strony, masz użyć albo ajax, albo umieścić cały formularz w iframe
. (Proszę, zrób to za pomocą ajax).
W przeciwnym razie kliknij input[type=button]
tak naprawdę nic nie zrobi.
Dane użytkownika to rzeczywiste dane z formularza, możesz je przechwycić za pomocą:
$(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);
}
});
});
});