2014-03-25 4 views
1

jstree을 사용하고 새 데이터로 다시로드하려고하지만 새 데이터로 보낼 수 없습니다.Js 변수가 아약스에서 업데이트되지 않습니다

var $driver = 0; 

$(document).ready(function() { 
    $('#tree_folder').jstree({ 
     'core': { 
      'check_callback': true, 
      "themes": { 
       "responsive": false 
      }, 
      'data': { 
       type: "POST", 
       url: "Doc.aspx/Folder", 
       data: function() { return '{"driver":"' + $driver + '"}' }, 
       contentType: "application/json" 
      } 
     } 
    }); 
});   


$(document).on('click', '.tile', function() { 
    var $item = $(this);  
    var $driver = $item.attr('data-driver');  
    // alert($driver);  
    $('#tree_folder').jstree('refresh'); 
}); 

나는 클릭 할 때마다 새 값을 얻었으며, 매번 오래된 기본 데이터를 보냈습니다. 경고 기능에서보다도, 그것은 나에게 비록 올바른 가치를 줄 수있는 경우에도 데이터가 함수 나 변수의 새로운 가치를 얻을 수있는 방법

function() { return '{"driver":"' + $driver + '"}' }

로 기록 json 후 전송 기본 하나? 이전 created global을 그대로

+0

json post가 비동기 호출 인 문제가있을 수 있으며 콜백 값을 가져와야합니다. –

+1

가능한 [AJAX 호출에서 응답을 반환하는 방법?] (http://stackoverflow.com/questions/14220321/how-to-return-the-response-from-an-ajax-call) – Andreas

답변

0

function getDriver() { 
    return '{"driver":"' + $driver+ '"}'; 
} 

$(document).ready(function() { 
    $('#tree_folder').jstree({ 
     'core': { 
      'check_callback': true, 
      "themes": { 
       "responsive": false 
      }, 
      cache: false, // cache false 
      'data': { 
       type: "POST", 
       url: "Doc.aspx/Folder", 
       data: getDriver(), // get updated driver 
       contentType: "application/json" 
      } 
     } 
    }); 
}); 

는 또한 change ajax options in jstree from server에 살펴보고, 또한 같은 jstreecache:false를 사용하여이 시도, .tile click function에서 $driver 전에

$(document).on('click', '.tile', function() { 
    var $item = $(this);  
    $driver = $item.attr('data-driver'); // remove var from this line 
    // alert($driver);  
    $('#tree_folder').jstree('refresh'); 
}); 

var 제거

+0

고마워, 어떻게 var를 잊어 버릴 수 있습니까? (:,'case : false'가 필요합니까?) 잘 작동했기 때문에 – user3458523

+0

OK 일 필요는 없습니다. 캐시 데이터 만 지우는 데 사용됩니다. –

관련 문제