내가 노드가 클릭 된 때 OrgChart를에 (사실에서 마우스 오른쪽 클릭) 캡처 할 Telerik RadOrgChart 노드 클릭 이벤트
을 RadOrgChart. 클릭 한 노드의 ID를 이벤트가 전달하도록합니다.오그 차트에서 이러한 이벤트를 찾을 수 없습니다.
누구든지 어떻게 할 수 있습니까 제안하십시오.
덕분에 내가 RadOrgChart 노드를 클릭에 대한 이벤트 처리기가 나던 것을 볼 설명서를 읽기
내가 노드가 클릭 된 때 OrgChart를에 (사실에서 마우스 오른쪽 클릭) 캡처 할 Telerik RadOrgChart 노드 클릭 이벤트
을 RadOrgChart. 클릭 한 노드의 ID를 이벤트가 전달하도록합니다.오그 차트에서 이러한 이벤트를 찾을 수 없습니다.
누구든지 어떻게 할 수 있습니까 제안하십시오.
덕분에 내가 RadOrgChart 노드를 클릭에 대한 이벤트 처리기가 나던 것을 볼 설명서를 읽기
감사합니다.
대신 클라이언트 측에서 더 나은 방법을 찾았습니다.
telerik의 Orgchart에 노드 각각이 작품처럼 기본 CSS 클래스, 그래서 뭔가를 :
$telerik.$(".rocItem").click(function (e) {
var orgChart = $find("<%= RadOrgChart1.ClientID %>");
var index = orgChart._extractGroupItemFromDomElement(e.target).get_index();
var hierarchicalIndex = orgChart._extractNodeFromDomElement(e.target)._getHierarchicalIndex();
hierarchicalIndex = orgChart._getRealHierarchicalIndex(hierarchicalIndex);
alert("Clicked " + hierarchicalIndex);
})
, 그래서 나는 당신이 당신의 자신의 ItemTemplate을을하고 템플릿, 이런 일의 항목의 클릭을 처리 할 수 있다고 생각.
<telerik:RadOrgChart ID="RadOrgChartDirectReports1" EnableViewState="true" Skin="Office2010Silver"
runat="server">
<ItemTemplate>
<asp:Button CausesValidation = "false" OnClick="LinkButton_Click" CommandArgument='<%# DataBinder.Eval(Container.DataItem, "EmployeeId")%>'
runat="server" Text = "Click" ID="LinkButtonNode"></asp:Button>
</ItemTemplate>
</telerik:RadOrgChart>
이 예에서는 항목 안에 버튼을 넣으므로 버튼 클릭을 처리 할 수 있습니다.
니스 cliente 솔루션을. 원래 질문에서 "OrgChart에서 그러한 이벤트를 찾을 수 없습니다."라고 말했기 때문에 나는 (잘못) 서버 이벤트를 요구한다고 생각했습니다. 사실, 당신의 솔루션은 서버 메소드를 호출하지 않지만, jQuery의 ajax API를 사용하여 이것을 해결할 수있다. 지금은 문제를 해결할 수있는 두 가지 방법이 있지만 시스템에 맞는 것을 선택하십시오. – Ewerton
계층 적 ID는 각 수준에서 노드의 0 기반 인덱스를 참조하므로 "0 : 2 : 1"의 계층 적 ID는 첫 번째 부모의 세 번째 자식의 두 번째 손자를 참조합니다. 노드의 ID를 원할 경우, _get HierarchicalIndex() 대신 orgChart._extractNodeFromDomElement (e.target)의 결과에 대해 getId()를 호출하십시오. –