2012-03-03 3 views
0

JavaScript에서 두 문자열을 비교하는 두 가지 방법을 시도합니다. 그러나 비교하는 동안 몇 가지 문제가 있다고 생각합니다. 결과가 표시되지 않습니다. 어디에 문제가자바 스크립트에서 두 문자열을 비교할 수 없습니다.

if(ajaxRequest.readyState == 4){ 

    var msg = ajaxRequest.responseText; 
    var fld = document.getElementById("prtCnt"); 
    if(msg == "false") { 
     var msg = "This User Name is already taken !!!!"; 
     fld.className = "bp_invalid"; 
     // fld.style.color=green; 
     fld.innerHTML=msg; 
    } 

는 몸이 말해 줄래? 감사.

+2

'msg'의 값을 확인 했습니까? – takteek

+0

조건이 있으면 웹 페이지에서 나에게 허위 사실을 표시합니다. 그러나 실패 할 경우. – adesh

+2

다음의 "print"문을 추가하여'msg'에서 어떤 값을 받고 있는지 알 수 있습니다 :'alert (msg);'if (msg == 'false') ... '테스트 전에 넣으십시오 그 추가 정보로 질문을 수정하십시오. – dyoo

답변

5

서버에서 반환하는 "false"문자열 앞뒤에 공백이 있는지 확인할 수 있습니다. 당신이 쉽게 그것을 할 수 있습니다 :

msg = msg.trim(); 

을하고 문

+0

덕분에 많은 도움이되었습니다. 하지만 왜 당신이 내게 말할 수있는 메시지에 오순절 공간이 있었는데 나는 방금 거짓 단어를 반환했다. 인쇄 ("거짓"); – adesh

+1

당신은 외침하고 있습니까? print ("false"); jsp 페이지에서? 시작 태그 앞에 또는 닫기 태그 뒤에 추가 공간이있을 수 있습니까? – snjoetw

+0

예, jsp 페이지에서 전화 해 주셔서 감사합니다. – adesh

1

더 공백이 없는지 확인하는 경우 다음을 수행하십시오

alert('"' + msg + '"'); 

을 여분의 공간이 있다면, 당신은 다만 수 단어 "거짓"주위에 다음과 같이 입력하십시오.

if(msg.match(/\s*false\s*/i)) 
관련 문제