2012-03-27 3 views
0

일부 개인 메서드가있는 JQuery 컨트롤이 있습니다. 컨트롤 외부에서이 메서드에 액세스하고 싶습니다. 더 많은 이해를 얻으려면 일부 코드 조각.jQuery 컨트롤 외부의 메서드 액세스

이 두 메소드는 동일한 자바 스크립트 파일에 있습니다.

function addSiblings(currentbtn) { 

    var dvClick = $(currentbtn).closest('div').siblings('div.OrgGroupLists') 
    var spnElement = $(dvClick).find('span.bgLime'); 
    objEditParam.renderRadio = false; 
    var dvPrnt = createDivNode(objEditParam); 
    //Want to access "createDivNode" method. 
    } 

(function ($) { 

function createDivNode(objEditParam) { 
     var countSpan; 
     var dvPrnt = document.createElement("div"); 
     countSpan = OS_hdnCount; 
     dvPrnt.id = "dv_Pr_" + countSpan; 
} 

})(jQuery); 

어떻게 호출 할 수 있습니까?

+0

왜 안 둘 다 넣었습니까? 나는 당신이 "onclick (this)"과 같은 인라인 이벤트를 사용하고있는 것 같아요. 맞습니까? – Joseph

+0

이 작업을 수행 할 수 없으며 아키텍처를 변경할 수 없습니다. – pylover

답변

0
(function ($) { 

    //use an event handler instead 
    $('element_selector').on('click',function(){ 

     //call the function and passing it the target 
     addSiblings(this); 
    }) 

    function addSiblings(currentbtn) { 
     var dvClick = $(currentbtn).closest('div').siblings('div.OrgGroupLists') 
     var spnElement = $(dvClick).find('span.bgLime'); 
     objEditParam.renderRadio = false; 
     var dvPrnt = createDivNode(objEditParam); 

     //you can now access createDivNode() 
    } 

    function createDivNode(objEditParam) { 
     var countSpan; 
     var dvPrnt = document.createElement("div"); 
     countSpan = OS_hdnCount; 
     dvPrnt.id = "dv_Pr_" + countSpan; 
    } 

})(jQuery); 
관련 문제