Ajax删除整个HTML表,而不是刷新它
我正在构建一个项目,并且第一次使用Ajax。目前,我有一个数据表,我使用Ajax从表中添加和删除记录,而无需重新加载页面。我想做的下一步是在数据中添加或删除数据时刷新表中的数据 在我的Ajax代码中,我有以下内容:Ajax删除整个HTML表,而不是刷新它,ajax,jquery,cakephp-2.0,Ajax,Jquery,Cakephp 2.0,我正在构建一个项目,并且第一次使用Ajax。目前,我有一个数据表,我使用Ajax从表中添加和删除记录,而无需重新加载页面。我想做的下一步是在数据中添加或删除数据时刷新表中的数据 在我的Ajax代码中,我有以下内容: $(document).ready(function(){ $('form#TesttableIndexForm').submit(function(event){ event.preventDefault(); $.ajax({ url:'/te
$(document).ready(function(){
$('form#TesttableIndexForm').submit(function(event){
event.preventDefault();
$.ajax({
url:'/testing/save_ajax_data',
type:'POST',
data: $("form#TesttableIndexForm").serialize(),
success: function(data) {
$("#testtable").replaceWith(data);
},
});
});
$('a.deleteajax').click(function(event){
event.preventDefault();
var answer = confirm("Delete this record?")
if (answer){
$.ajax({
url:'/testing/delete_ajax_data/',
type:'GET',
data: $(this).attr("href"),
success: function(data) {
$("#testtable").replaceWith(data);
},
});
}
return false;
});
});
表的ID是#testtable
。我添加了$(“#testtable”).replacetwith(数据)代码>在代码的success
部分中,以便在添加或删除数据时,刷新表
然而,即使仍然可以使用Ajax代码删除和添加数据,当任何一个事件发生时,表都会消失。当我手动重新加载页面时,表会重新出现,并显示修改后的数据
我使用的是CakePHP,表中的数据是从数据库生成的。这会给我带来麻烦吗
提前谢谢 找出了问题所在
在我的Ajax文件中,我添加了var loadUrl=“/test area/table/”
是指向将加载HTML表的控制器的URL。然后,我必须在控制器中创建一个函数,以基本上再次查询数据库:
function testtable() {
$this->layout = 'ajax';
$this->loadModel('Testtable');
$testing = $this->Testtable->find('all');
$this->set('testing', $testing);
}
我在玩这个游戏时注意到,如果不指定$this->layout='ajax'代码>它将加载带有默认布局的页面。这会完全破坏页面。因此,我创建了一个完全空白的布局文件,名为ajax
然后,在ajax代码中,我删除了:
$("#testtable").replaceWith(data);
与:
所有这些加在一起,当添加或删除一条记录时,表将毫无问题地重新加载。您从/testing/save_ajax_data
得到什么响应,请将警报(数据)
放在$(“#testtable”)的正上方进行检查。替换为(数据)代码>语句。
$("#testtable").load(loadUrl + "#testtable");