我想必须实现Ajax/J-Query来更新数据库,现在我需要在cakephp中重新加载ctp页面的所有内容而不刷新/重定向。
可能吗?
请帮帮我。
我试过了
$.ajax({
url: 'http://localhost/projectname/Experiences/experienceadd',
type: 'POST',
data: {'companyname':companyname,'title':title,'monthstart':monthstart,'location':location,'yearstart':yearstart,'yearnextstart':yearnextstart,'monthnextstart':monthnextstart,'presentyeardata':presentyeardata,'description':description},
success: function (data) {
if(data)
{
mystr = '<div style="display: block; opacity: 1;" class="item mix book mix_all" data-year="2010"> <div class="pubmain"> <div class="pubassets"> <a href="#" class="pubcollapse"> <i class="icon-expand-alt"></i> </a> </div> <h4 class="pubtitle"> ' + companyname + '</h4> <div class="pubauthor"><strong>'+ title +'</strong>,'+ location+'</div> <div class="pubcite">'+ yearstart +' - '+ yearnextstart +' , <strong>'+ presentyeardata + '</strong> </div> </div> <div style="display: none;" class="pubdetails"> <h4>'+ description+'</h4> <div class="pubdetails"> <a class="icon_a icon_right_head" class="exp_rid" id="'+ data +'" href="javascript: void(0);"><i class="icon-trash"></i> Remove</a> <a class="icon_a icon_right_head" class="exp_eid" id="'+ data +'" href="javascript: void(0);"><i class="icon-pencil"></i> Edit</a> </div> </div></div>';
$('#pexperience_details').append(mystr);
$("#experience-box").hide( 500, function() { });
$('#add-experience').show();
$().toastmessage('showSuccessToast','your skill is successfully Saved');
}
else
{
$().toastmessage('showErrorToast', 'your skill is not successfully Saved');
}
}
});
但是这个只添加一个内容区域。如果我的问题得到解决,则不需要上面的代码。任何想法.....?
谢谢
创建一个全新的控制器操作。例如
http://localhost/projectname/Experiences/refresh
在这里,您可以返回要刷新的所有内容。您可以在当前的 ajax 函数中调用此 ajax 函数(如果成功/数据(
此外,您可能希望停用布局
$this->layout = false;