2012-11-05 8 views
0

gridview 행에서 onclientclick 이벤트가 발생하지만 행의 아무 곳이나 클릭하면 서버 측 메서드를 호출하려고합니다. 어떻게 여분의 열 + 선택 버튼 + onselectedindexchanged의 사용없이 이것을 수행 할 수 있습니까?행의 아무 곳이나 클릭하면 serverside를 사용할 수있는 gridview 이벤트는 무엇입니까?

고맙습니다.

+1

이 당신을 도울 수

<asp:LinkButton runat="server" CssClass="row-button" OnClick="ServerSideClickHandler" Text="Click me"/> 

CSS는 당신의 버튼을 숨 깁니다. http://stackoverflow.com/questions/9469037/asp-net-gridview-row-onclick – Adil

답변

2

여기 정확히 달성하려고하는 것이 확실하지 않지만 그리드 뷰 이벤트를 전혀 사용할 필요가 없다고 생각합니다. 일부 자바 스크립트를 사용하여 올바른 행 어디에서나 클릭을 처리 할 것이라고 가정합니다. CSS를 사용하여 기존 열 중 하나에 ASP 링크 버튼을 배치하여 보이지 않게 숨길 수 있습니다. 그런 다음 자바 스크립트 버튼을 클릭하십시오. 그런 다음 링크 버튼은 정상적인 것처럼 자신의지지 방법을 가질 수 있습니다.

행 인덱스 또는 데이터 항목 ID의 명령 인수를 전달할 수 있도록 링크 버튼에 onClick 대신 명령을 실행하게 할 수 있습니다.

상황을 어떻게 처리합니까?

+0

예, 감사합니다. mang. 그게 내가 필요한거야. –

1

나는 그대로 사용할 수있는 이벤트가 없다고 생각합니다.

javascript/JQuery에 사용자 정의 함수를 작성하여 URL에 게시 할 수 있습니다.

1

서버 쪽 단추 클릭 처리기가있는 단추를 추가하십시오. 표시하지 않으려면 CSS를 사용하여 숨 깁니다 (display: none;). 그런 다음 <tr>의 GridView 테이블에 대한 클라이언트 쪽 클릭 핸들러를 연결하고 버튼의 클릭 이벤트를 트리거하게 할 수 있습니다. 그리드보기에서

버튼 : jQuery를 사용하여

.row-button { display: none; } 

클라이언트 측 핸들러 :

$(document).ready(function() { 
    $("tr").click(function() { 
    $(".row-button", this).click(); 
    }); 
}); 
관련 문제