저는 프로젝트를 만들고 Ajax를 처음으로 사용하고 있습니다. 현재 데이터 테이블이 있으며 Ajax를 사용하여 페이지를 다시로드하지 않고도 테이블에서 레코드를 추가 및 삭제할 수 있습니다. 다음 단계는 데이터가 데이터에 추가되거나 데이터에서 제거 될 때 테이블의 데이터를 새로 고치는 것입니다. 테이블의 ID가 #testtable
입니다Ajax는 HTML 테이블을 새로 고치는 대신 제거합니다.
$(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;
});
});
: 내 Ajax 코드에서
, 나는 다음과 같은 있습니다. 코드의 을 코드의 success
부분에 추가하여 데이터가 추가되거나 제거되면 테이블이 새로 고쳐지도록했습니다.
그러나 데이터를 제거하고 해당 Ajax 코드를 사용하여 추가 할 수 있지만 두 이벤트가 발생할 때 테이블이 사라집니다. 페이지를 수동으로 다시로드하면 표가 수정 된 데이터와 함께 다시 나타납니다.
나는 CakePHP를 사용하고 있으며 테이블의 데이터는 데이터베이스에서 생성됩니다. 이게 내가 문제를 일으키는 원인이 될까?
미리 감사드립니다.
'/ testing/save_ajax_data'에서 얻은 응답은'alert (data)'를'$ ("testtable"). replaceWith (data);'문장 바로 위에 올려서 확인하십시오. –