2012-07-26 2 views
0

정말 내 코드는 매우 간단하며 문제없이 아약스로 여러 번 작업했습니다.Ajax가 최근 페이지의 HTML 코드를 돌려주는 이유는 무엇입니까?

var dataForm=jQuery('form').serialize(); 
jQuery.post( 
     '/home/index/page/1', 
     dataForm, 
     process_Results_Search 
     ); 

function process_Results_Search(response) 
     { 
       console.log('Im processing data'); 
       console.log(response); 
     } 

내 컨트롤러에서 나는 단지 간단한 에코합니다 :

echo "im here"; 

을하지만 내 응답이 (최근 페이지의 내용) 같은 것입니다하지만 지금은이했습니다. 나는 젠드을 사용하고 있습니다 :


<!DOCTYPE HTML> 
<html> 
<head> 

    .... 

im here<!----------in the end of the response!!!----------------> 
+0

Firebug에서 POST의 응답을 볼 때 어떤 결과가 나옵니까? –

답변

0

확인을 고정. 양식을 사용하여 페이지를 렌더링하는 데 사용한 것과 동일한보기로 게시물을 보냈습니다. 그래서 나는 다시 같은 견해를 표현하고있었습니다. 요청을 처리하기 위해 다른 작업을해야했습니다. ajax

0

응답보기에서 템플릿을 비활성화하는 것을 잊지 마세요!

0

반드시 다른 동작을 사용할 필요는 없습니다. 내 코드에는 기본적으로 AJAX 호출과 일반 호출 (예 : 팝업 창)에 동일한 코드를 사용하는 페이지가 있습니다. 호출이 아약스인지 확인하고 레이아웃을 비활성화하고보기가 가능한지 확인하십시오 :

if($this->getRequest()->isXmlHttpRequest()) { 
     $this->_helper->layout()->disableLayout(); 
     $this->_helper->viewRenderer->setNoRender(); 
    } 
관련 문제