2013-07-12 2 views
0

ExtJs에 문제가 있습니다. OnClick 함수는 데이터를 한 번로드해야합니다. 그러나 모든 클릭에 대해 동일한 데이터를 복제하고 있습니다.ExtJs Json 데이터 추가

여기 내 코드입니다 :

function onselectionchange() 
{ 

jQuery.ajax({ 
    type: "POST", 
    url: "/Maintainer/getfolders", 
    data: null, 
    contentType: "application/json; charset=utf-8", 
    async: true, 
    success: function (result) { 
     var store = Ext.getCmp('gridpanel').getStore(); 
     store.loadData(result, true); 
    }, 

    error: function (p_Result) { 
     var error = "Error on controller: \"" + p_Controller + "\" in function: \"" + p_ControllerFunction + "\" statusText: \"" + p_Result.statusText; 
     alert(error); 
    }, 
    traditional: true 
}); 

} 
+0

매번 동일한 URL에 동일한 데이터 (실제로는 데이터 없음)를 게시하고 있습니다. 왜 당신은 다른 결과를 기대합니까? –

+0

데이터는 결과에 더 저장된 URL에 의해 제공됩니다. 이 함수는 grid.OnClickFunction에 의해 호출됩니다. 데이터를 클릭하면 잘 작동하지만 다시 클릭하면 동일한 데이터가 모든 클릭에 복제됩니다. 클릭 기능이 한 번만 작동해야합니다. 가능하다면 나를 도와주세요. grid.OnClickFunction = "onselectionchange()"; – user2576505

+0

첫 번째 행을 클릭 할 때 또는 전체적으로 한 번만 수행 할 동작을 원하십니까? – Reimius

답변

0
function onselectionchange() 
    { 
    if(clickonce == "") 
    { 
    ajax({ 
     type: "POST", 
     url: "/url", 
     data: null, 
     contentType: "application/json; charset=utf-8", 
     async: true, 
     success: function (result) { 

     enter code here 
     clickonce = 1; 
     } 

    }); 
    } 
    else 
    { 
     alert("already selected once"); 
    } 
    } 

무엇 i'am 여기에서하고 ClickOnce를 가진 전역 변수를 만드는 것입니다. 버튼을 처음 클릭하면 json이 업로드되고이 변수의 플래그가 1로 설정되므로 다시 채워지지 않습니다.