我想提交通过jquery加载的表单而不刷新整个页面。 但是这段代码首先加载表单而不刷新整个页面,然后通过jquery加载的表单在提交时刷新整个页面。 如何解决这个问题??
$(document).ready(function() {
$("body").on("click",".down",function(e) {
e.preventDefault();
var name = $("#down").attr("name");
var vote = $("#down").val();
var voteString = 'votedown='+ vote;
$.ajax({
type: "POST",
url: 'vote.php',
data: voteString,
cache: false,
error: function() {
$('#btn-vote').html('<p>An error has occurred</p>');
},
beforeSend: function() {
$('#load').html("<img src='../images/LoaderIcon.gif' />");
},
success: function(html) {
$("#re").html(html);
}
});
答案 0 :(得分:0)
on函数也采用了一个选择器,这样你就可以在加载了ajax的元素上使用它。您还必须将其绑定到页面加载时存在的元素。
$('body').on('click', 'selector of the element created', function(){
...
})
显然你不应该使用body,而应该使用加载元素的更近的父级。