2012-11-16 3 views
1

프로젝트에 MVC 아키텍처가 있으며 최근에는 이상한 문제가 있습니다. PHP에서 출력 결과를 Ajax 요청에 응답하려고 할 때마다 출력 전에 8 개의 입력 문자를 얻는다. 나는 그들이 에코를하고 싶을 때이 문자들을 넣는 것을 알아 차 렸지만 출력하려고하는 문자열에 없을 때 이러한 여분의 문자가 어떻게 입력되는지 모른다. 나는 그들이 문제가 아닌지 확인하기 위해 모든 파일 인코딩을 점검했다. 심지어 이전에 뭔가를 인쇄하는 스크립트가 있는지 여부를 확인하기 위해 응답을 비워 두었습니다. 그러나 그렇지 않은 경우 출력은 문자없이 비어있었습니다.jquery의 ajax에서 추가 입력 문자 받기

팁이 있습니까? 여기

내 JS의 :

$.ajax({ 
    url: _baseRoot + '/admin/request', 
    type: 'post', 
    data: "req=" + req + args, 
    success: function(data) 
    { 
     var result = data.split(","); 

     var m_type = ""; 

     switch(result[0]) 
     { 
     case "error": m_type = "red"; break; 
     case "warning": m_type = "yellow"; break; 
     case "success": m_type = "blue"; break; 
     } 

     showMessage(m_type, result[1]); 
    } 
    }); 
+0

여분의 문자가 서버에서 나옵니다. 자바 스크립트로 응답을 수정하지 않으려면 JavaScript가 도움이되지 않습니다. –

+0

나는 실제로했다! 나는 jQuery의 $ .trim으로 데이터를 다듬었다. 나는이 문제가 내 문제라는 것을 알고 있지만, 왜 그것이 인쇄에 나오지 않는지는 정말로 알지 못한다. – MahanGM

답변

1

정말하지만 PHP 프로젝트가가는 대부분만큼, 백엔드를 보지 않고 그것을 찾아 낼 수 없다, 사람들은 아마 출력 아무것도 의미하지 않는 다양한 포함 된 파일에서 제공됩니다 끝 부분에는 ?>과 개행 문자가 있습니다. PHP 인터프리터는 단지 모든 것을 <?php ?> 태그 안에없는 출력으로 전달합니다.

PHP 파일에서 아무 것도 출력하지 않으려면 ?>을 닫을 수 있으며 인터프리터는 파일 끝을 스크립트 끝으로 감지하고 우발적 인 공백이 없는지 확인합니다 ?> 이후의 출력으로 들어갑니다.

+0

감사합니다. 필자는 최근에 파일에 간격이있는 태그를 입력 숯으로 정확히 추가했기 때문에 이것이 의미가 있다고 생각합니다. 시도해 볼게. – MahanGM

+0

조언 주셔서 감사합니다. 나는 그 사실을 정말로 모르고 있었다! – MahanGM