2009-12-24 3 views
1

나는 이것이 너무 오랫동안 코드를 꼼짝 않고 바라보고 있었기 때문에 내가 볼 수없는 명백한 문제라고 생각한다. 나는 JQuery와 POST의 일환으로이 콜백이 있습니다아마도 JavaScript의 명백한 문제

     function(data){ 
           if(data == 'yes') { 
             $('div.done').show(); 
           } else if(data != 'yes') { 
             $('div.error').show(); 
             alert(data); 
           } 
         }); 

내가 표시된 오류 DIV를 이용한다고 경고에서 내가 얻을 모두가 '예'입니다. 누구든지 어떤 조언을 받았다. (내가 말했듯이, 내가 놓친 정말 명백한 실수라고 생각한다.)

감사

+0

파이어 폭스와 함께이 시도 :'경고 (data.toSource())' –

+1

당신은'data' 그것은/끝을 시작할 것 없음 공백이 없다는 것을 확신? 'data = data.replace (/^\ s + | \ s + $ /, '');'before if 문을 추가하십시오. – krcko

+0

좋은 제안, 그냥 jQuery를 사용한다면 $ .trim (데이터);을 사용할 수도 있습니다.). – Jake

답변

4

Debuggng 101 :

function (data) { 
    alert(escape(data)); 
    if (data == 'yes') { 
     $('div.done').show(); 
    } else if (data != 'yes') { 
     $('div.error').show(); 
     alert(data); 
    } 
}); 
+0

감사합니다. 그 결과'예 % 0a'가 나타났습니다. 그거 줄 바꿈이야? 내가 어떻게 그걸 제거 할 수 있는지, 아니면 PHP가 보내는 것을 더 잘 멈추는 지 알고 있습니까? PHP 파일에서 무엇을 보내는 유일한 것은'echo 'yes';'입니다. – hrickards

+0

% 0A는 정규식을 수행 할 수있는 줄 바꿈입니다. data.replace (/ \ n + $ /); – epascarello

+0

감사합니다. 그게 왜 보내질 지 모른다고 생각하세요? – hrickards

관련 문제