2013-06-05 2 views
0

저는 JQuery Mobile을 처음 사용하므로이 쉬운 질문에 대해 저에게 실례합니다.jQuery 모바일 버튼 클릭 이벤트가 작동하지 않습니다.

<a id="btnSort" href=# data-role="button" 
       runat="server" onclick="Click_btnSort">Sort</a> 

및 이벤트 핸들러 코드 숨김 :

나는 버튼이 그러나이 때 발생하지 않습니다,

protected void Click_btnSort(object sender, EventArgs e) 
     { 
      ... 
     } 

나는이 방법의 시작 부분에 중단 점을 가지고를 I 버튼을 클릭하십시오.

추신. 필드 유효성 검사기를 사용하고 있지 않습니다.

제안 사항?

+0

안녕하세요. 죄송합니다. 그러나이 "protected void Click_btnSort (object sender, EventArgs e)"는 JavaScript가 아닙니다. 너는 무엇을 원하니? –

+0

'Sort' 그런데 JavaScript의 메소드 정의가 무엇입니까? –

+0

@AurelioDeRosa는 ASP.NET과 C#입니다. – MrCode

답변

2

당신의 이벤트가 고비를 넘기지 않는 이유는 html a 요소를 사용하기 때문입니다. 그 요소는 포스트 백을 트리거하지 않습니다 (아마 autopostback proerty 요소를 true로 설정했을 때, 집단).

클릭 할 때 서버 쪽 물건을 처리하기 위해 코드에서 ASP.NET 버튼 클릭 이벤트를 사용하려는 경우에는 즉시 사용할 수있는 ASP : Button 또는 LinkButton 요소를 사용하는 것이 좋습니다. 당신은 (클릭하면 클라이언트 측 물건을 할, jQuery를 함께 예를 들어) 클라이언트 측 클릭 이벤트를 사용할 때

, 당신은 아마 더 나은 다음과 같은 요소에 이벤트 리스너를 추가 :

$(document).on('click', '#btnSort', function() { 
// client side stuff here 
}); 

편집을 :

jQuery를 사용하여 기본 클라이언트 측 이벤트 바인딩을 보려면이 부분을 참조하십시오. 이 익숙하지 않을 경우, 나는 그 그런 식으로처럼 일어나지 않을 수 있다고 생각 그래서 가치가있을 것입니다, 자바 스크립트/jQuery를 기본에 대해 태그가 서버 측에 관련되지 않은

http://jsfiddle.net/6mYQN/1/

1

<a>으로 시간을 제어합니다 읽어 보시기 바랍니다 .

코드가 서버에서 실행되는 경우에도 Click_btnSort이 자바 스크립트 기능에서 코드 뒤에 있으므로 코드/스크립트 태그에 함수를 추가해야합니다 (onclick 이벤트에서 호출 함).

0

이 당신이 할 수있는 일 이전 게시물이지만은 관련 서버 측 이벤트와

<asp:Button ID="btnServerSort" style="display:none;" runat="server" Text="SORT" OnCommand="Click_btnServerSort" ..> 

을 만드는 것입니다. 난이 도움이되기를 바랍니다

<a id="btnSort" href=# data-role="button" data-ajax="false" runat="server" onserverclick="Click_btnServerSort" >Sort</a> 

을 따를

그런 다음 코드를 수정합니다.

관련 문제