2014-12-19 2 views
0

데이터베이스를 업데이트하기 위해 Ajax/J-Query를 구현하고 싶습니다. 이제는 새로 고침/리디렉션하지 않고 cakephp에서 모든 ctp 페이지의 모든 내용을 다시로드해야합니다.cakephp에서 리디렉션/새로 고침없이 컨트롤러를 다시로드하는 방법

가능합니까?

도와주세요.

나는
$.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');  
       } 
      } 
     }); 

을 시도했지만이 하나 하나 개의 콘텐츠 영역을 추가 할 수 있습니다. 위의 코드가 필요없는 것보다 내 문제가 해결된다면. 어떤 아이디어 .....?

감사합니다.

+0

네, 그것은 가능을 비활성화 할 수 있습니다 당신은 현재 아약스 함수 내에서이 아약스 함수를 호출 할 수 있습니다. 그러나 당신이 시도한 것을 우리에게 보여주세요. –

+0

위의 것들을 시도했습니다. – Yash

답변

1

완전히 새로운 컨트롤러 작업을 만듭니다.

http://localhost/projectname/Experiences/refresh 

예를

를 들어 여기에 당신은 당신이 새로 고쳐야 할 모든 내용을 반환합니다. (성공/데이터 경우)

은 또한 당신이 레이아웃

$this->layout = false; 
+0

부분적으로는 수정하지만 내 목표는 달성하지 못합니다. 어쨌든 고마워. – Yash

+0

정확히 달성하려는 것은 무엇입니까? 모두 새로 고치려면 아약스에서 현재 페이지를 다시 호출하여 에 넣는 것이 어떻습니까? – conehead

+0

데이터베이스의 모든 업데이트 된 데이터를 현재 컨트롤러 인 ctp로 새로 고침하고 싶지만 현재 여기있는 동일한 위치에 있습니다. 내 ctp 에서처럼 많은 jquery와 ajax 호출이있는 이유가 있습니다. – Yash

관련 문제