2014-04-27 5 views
2

J'utilise le code follwing mais cela n'empêche pas de recharger et le texte réussi n'est pas vu sur la page de formulaire.Prévenir recharger après la soumission

$("#ak_Submit_img").click(function() { 
$.post($("#ak").attr("action"), 
     $("#ak :input").serializeArray(), 
     function(info){ $("#result").html(info); 
    }); 
clearInput(); 
}); 

$("#ak").submit(function() { 
    return false; 
}); 

function clearInput() { 
    $("#ak :input").each(function() { 
     $(this).val(''); 
    }); 
} 

<form id='ak' class='sfm_form' method='post' action='such.php' accept-charset='UTF-8'> 

<input type='image' name='Submit' id='ak_Submit_img' src='images/ak-Submit-0.png' alt='submit'/> 

Où suis-je en train de faire une erreur?

Répondre

0

return false n'est pas le moyen d'empêcher le rechargement avec jquery.

La manière habituelle pour empêcher un rechargement d'une pression de bouton est:

$('#button').click(function(e){ 
    // do whatever actions you need here 
    e.preventDefault(); 
}); 

Pour votre code je suggère:

$("#ak_Submit_img").click(function(e) { 
e.preventDefault(); 
$.post($("#ak").attr("action"), 
     $("#ak :input").serializeArray(), 
     function(info){ $("#result").html(info); 
    }); 
clearInput(); 
}); 

OU

$("#ak").submit(function(e) { 
e.preventDefault(); 
    return false; 
}); 
+0

Merci pour votre répondez mais cela ne fonctionne pas. –

+0

qui peut être que l'événement étant empêché est sur la mauvaise partie. En regardant à nouveau, vous soumettez le formulaire dans sa propre fonction. Essayez d'utiliser 'e.preventDefault();' dans la fonction submit. – Derple

+0

J'ai ajouté l'instance dans ma réponse – Derple

Questions connexes