我有一个带有我通过Jquery提交的id offerForm的表单,但是尽管'返回false'声明,表格不通过ajax提交。任何帮助都感激不尽。
$(document).ready(function() {
$('#offerForm').live('submit',function(){
loadData(1);
});
function loadData(page){
$.post('get-offers.php', $("#offerForm").serialize() + '&page=' + page, function(data) {
//Do stuff
$('#demo').html(data.htmlOutput);
},'json' );
return false;
}
});
答案 0 :(得分:1)
我建议使用位于此处的ajaxSubmit插件:http://jquery.malsup.com/form/。它完全符合您的要求。
在你的情况下,你会使用类似的东西:
$('#offerForm').submit(function()
{
var options = {
dataType: "json",
success : function(data) {
$('#demo').html(data.htmlOutput);
}
};
$(this).ajaxSubmit(options);
return false;
});
答案 1 :(得分:0)
作为一般规则,您应该使用event.preventDefault()
而不是return false
停止活动 - 它们都有效,但使用该活动更清晰。
$(document).ready(function()
{
$('#offerForm').live('submit',function(event){ // add event as a parameter
event.preventDefault(); // and call preventDefault here
loadData(1);
});
function loadData(page)
{
$.post('get-offers.php', $("#offerForm").serialize() + '&page=' + page, function(data)
{
//Do stuff
$('#demo').html(data.htmlOutput);
}, 'json');
}
});