2014-11-19 4 views
-1

jstree가 있고 javascript 함수에서 어떤 노드가 제대로 선택되었는지 확인하고 있습니다. 하지만 그 노드 값을 변수에 할당하면 작동하지 않는 일반 문자열 변수와 비교를 수행합니다.다른 변수의 javascript에서 두 변수의 비교를 할 수 있습니까?

$(document).ready(function() { 
    $('#bdeViewNew').on('changed.jstree', function(e, data) { 
     var i, j, r = []; 

     for (i = 0, j = data.selected.length; i < j; i++) { 


      var x = data.instance.get_node(data.selected[i]).text; 


      r.push(data.instance.get_node(data.selected[i]).text); 


      if(x=="Hadoop") 
       {alert("hi");} 
      else{ 
       alert("hello"); 
      } 


     } 
    }); 

}); 

우리는 그러한 비교를 어떻게 할 수 있는지 알고 있습니까? 당신의 변수가 시작이나 끝 부분에 예상치 못한 공백을 가지고 가능성이 사전

+0

자바가 자바 스크립트가 아닙니다. 최소한 태그를 올바르게 가져 오십시오. 또한 참조하십시오 http://stackoverflow.com/help – SirRichie

+0

정확하게 "*"작동하지 않음을 의미합니까 *? 무슨 일이 .. ..? 어떤 경고/오류 ..? –

답변

0

덕분에, 즉 공통의 문제입니다. 당신은 모든 최신 브라우저에서 작동해야

var x = data.instance.get_node(data.selected[i]).text.trim(); 

으로 제거 할 수 있어야한다.

또한 JavaScript에는 C/C++ 또는 Java에서 익숙한 것처럼 범위를 차단하지 않는 기능 범위가 있습니다. 거기에 선언 한 x는 for 루프뿐만 아니라 함수 전체에서 볼 수 있습니다. 아마도 i, j 및 r과 동시에 선언해야합니다.

+0

고마워요. 그 일을 내가 너의 제안을 받아 들인다. – user07

관련 문제