Originariamente inviato da mxa
Guarda questo esempio:

http://jsbin.com/itizir/1/edit

Questo dovrebbe farti capire come funzionano le cose.
Ok ma non ho ancora avuto risposta sul motivo per cui se io al codice precedentemente da me postato aggiungo un ulteriore campo come quello che posto ora il problema non si verifica più?

codice:
<form action="" name="recuperaPasswordAjax">
Nickname<input type="text" name="nickname" id="nickname" value="" />

Test<input type="text" name="test" id="test" value="" />
<input type="button" id="recuperaPassword" value="Recupera" />
<input type="hidden" name="recuperaPasswordForm" id="recuperaPasswordForm" value="ok" />
</form>
codice:
$(document).ready(function() {
    $("#recuperaPassword").click(function() {
        var nickname = $("#nickname").val();
        var test = $("#test").val();
        var recuperaPasswordForm = $("#recuperaPasswordForm").val();
        $.ajax({
            type: "POST",
            url: "recupera-password-ajax.php",
            data: "nickname=" + nickname + "&test=" + test + "&recuperaPasswordForm=" + recuperaPasswordForm,
            dataType: "html",
            success: function(risposta)
            {
                if (parseInt(risposta) == 1) {
                $("#risposta").html("<div class='messaggio affermativo'>Password cambiata, controllare la propria email</div>");
                $("#nickname").val('');
                $("#test").val('');
                } else {
                $("#risposta").html("<div class='messaggio errore'>Si è verificato un errore</div>");
                }
            },
            error: function()
            {
                alert("Errore Ajax");
            }
        });
    });
});