2016-09-28 1 views
1

문제는 간단합니다. ASP.NET GridView에서 e.Row.Parent.ClientID 속성이 RowDataBound 이벤트에 사용되면 .NET에서 다른 GridView에 대한 식별자, GridView에 ClientID를 사용하는 자바 스크립트가 페이지에 있으면 작동하지 않습니다. e.Row.Parent.ClientID를 호출하면 해당 GridView에 대해 다른 ID가 생성됩니다.

문제를 복제하려면, 하나의 GridView와 WebForm의를 만들 수 있고, 하나 개의 클라이언트 HTML 버튼이처럼의 GridView 식별자에 액세스 할 수 있습니다

<input id="Button1" type="button" value="Test" onclick="alert('The next message does not have to be null: ' + document.getElementById('<%=gridViewTest.ClientID %>'))" /> 

gridViewTest_RowDataBound 당신이 전자를 사용하지 않는 경우. Row.Parent.ClientID 속성을 사용하면 모든 것이 잘되지만 일부 용도로 e.Row.Parent.ClientID를 사용하면 .NET에서 GridView에 대한 다른 ID가 생성되어 HTML 단추가 더 이상 작동하지 않습니다.

예상되는 동작입니까, 아니면 버그입니까? 누구에게이 문제가 있습니까?

감사

e.Row.Parent가되지 않습니다 GridView (귀하의 경우 gridViewTest) 때문이다

답변

0

GridView의 자녀입니다.

단지 .Parent을 추가하고

e.Row.Parent.Parent.ClientID 
을 갈 수있는, 그래서 트릭을 할해야 한 단계 위로 간다
관련 문제