2011-04-13 6 views
0

다음 코드에서트 리뷰 - SelectedNodeChanged가 추가 된 하이퍼 링크에 대해 작동하지 않습니다.

 <asp:TreeNode Text="node text here <a>Click</a>" Value="1" Expanded="False"> 
    <asp:TreeNode Text="er" Value="0"></asp:TreeNode>        
    <asp:TreeNode Text="err" Value="1"></asp:TreeNode> 
    <asp:TreeNode Text="err" Value="2"></asp:TreeNode> 
</asp:TreeNode> 

'SelectedNodeChanged'이벤트에 사용자 지정 코드가 있습니다. 이 이벤트는 노드 텍스트 (여기서는 노드 텍스트)를 클릭 할 때 트리거되지만 하이퍼 링크 (앵커 태그 "클릭")를 클릭하면 트리거되지 않습니다. 앵커 태그를 클릭하여 'selectednodechanged'처럼 행동하게하는 방법은 무엇입니까?

답변

1

__doPostBack 노드에서 발생하기 때문에 노드를 선택할 때 항목을 클릭하고 포스트 백을 야기해야합니다. 하이퍼 링크가 자체 클릭을 처리하기 때문에 링크에 대한 클릭 이벤트도 처리 할 수 ​​있으며 수동으로 __doPostBack을 직접 호출 할 수 있습니다. 렌더링 된 마크 업을 살펴보고 기존의 __doPostBack 문을 찾아 보면 에뮬레이션해야합니다.

HTH.

+0

Yes, or Content입니다. 문제는 컨트롤 ID/명령 콤보가 올바른 값을 전달해야한다는 고유 한 콤보이므로 컨텐트를 조사해야하는 이유입니다 ... –

+0

오류 System.Web.UI. WebControls.TreeNodeCollection에는 'System.Web.UI.WebControls.TreeNode'유형의 항목이 있어야합니다. 'a'는 'System.Web.UI.HtmlControls.HtmlAnchor'유형입니다. - 소스를 검색하여 ControlId 및 Command에 대한 두 매개 변수를 추가했습니다. 내가 놓친 게 있니? – Saks