【发布时间】:2015-08-10 21:23:40
【问题描述】:
我正在使用 codeigniter 和 jquery 开发单页应用程序,通过单击菜单,我正在加载内容,这工作正常,第一次加载内容,当我尝试提交模式表单时它有效,但每次我重新加载内容并再次提交同一个表单时,我看到它提交的次数是我在页面上重新加载内容的次数。
这是我在单击菜单项时将主要内容加载到容器的方式:
case 'Parametrage':
$("#container").empty();
$("#container").load("params");
break;
以及提交模态表单的“param”控制器加载的视图中的脚本:
$(function(){
$('body').on('submit', 'form', function(e){
e.preventDefault();
$.ajax({
type: "POST",
url: "<?php echo site_url("params/save_form"); ?>",
data:$(this).serialize(),
success: function(response){
if(response == 'true'){
$.modal.close();
var table = $('#table_id').DataTable();
table.ajax.reload();
$('#dialog-message').attr('title','Enregistrement');
$('#msgIcon').attr('class','ui-icon ui-icon-circle-check');
$('#msgMessage').html('Enregistré avec succès');
$("#dialog-message").dialog({
modal: true,
buttons: {
Ok: function() {
$(this).dialog("close");
}
}
});
}else{
$('#errors_container').html(response);
}
},
error: function(){
alert('Error');
}
});
});
});
你能帮忙吗?
谢谢
从 Shaiful Islam 的回答开始,这解决了问题:
case 'Parametrage':
$("#container").empty();
//Added this line
$('body').off("submit", "form");
$("#container").load("params");
break;
【问题讨论】:
-
插入数据后,使用
header函数重定向到您的控制器。它会阻止提交
标签: javascript php jquery html codeigniter