2013-08-20 4 views
-1

지난 몇 주간 DataTables.net 테이블 기능과 결합 된 JQuery UI를 많이 사용하여 C# 응용 프로그램을 작성했습니다. 세션 감지와 관련하여 빠른 질문이 있습니다.JQuery UI 및 DataTables

이제는 Page_Load에서 세션 변수가 존재하는지 확인하도록 검색했지만 최종 사용자가 탭을 클릭하고 텍스트 클라이언트 측에 입력하는 것을 막지는 못합니다.

그래서 내 질문은 세션 변수를 처리하는 가장 좋은 방법은 JQuery 등 클라이언트 쪽 스크립팅을 사용할 때 무엇입니까?

편집 i가 발생하지 않도록 노력하고있어

, 새로 고쳐야 페이지에 DataTables의 필터링 옵션을 사용하려는 최종 사용자입니다. 예를 들어, 현재 내 페이지는 처리 대화 상자에 있습니다. 사이트 내의 다른 페이지로 이동하거나 새로 고침 데이터 버튼을 누르면 기본 로그인 단계로 리디렉션됩니다.

나는 클라이언트 측 활동이 수행 될 때 세션 로그인 = true를 확인하는 것과 같은 것을 찾고 있다고 생각합니다.

+0

유효성을 검사 하시겠습니까? 정말 불분명하다. –

+1

모범 사례는 서버 측을 통해 클라이언트에게 전송되는 스크립트를 제어하는 ​​것입니다. AJAX가 아니며 서버가 실제로 검사를 수행하지 않는 한 이러한 검사는 자바 스크립트에서 발생하지 않아야합니다. 본질적으로 클라이언트 스크립트에서 액세스 제어 기능을 노출 할 경우 스크립트 공격의 형태로 사이트를 열어두고 싶지는 않습니다. –

답변

0

당신은 당신의 .cs 파일에 일부 공공 변수를 정의하고이 file.like 당신의 .ASPX에서 사용할 수 있습니다 :

서버 측 :

public partial class WebForm2 : System.Web.UI.Page 
    { 

     public bool sessionSet; // this is your variable 
     protected void Page_Load(object sender, EventArgs e) 
     { 
     } 
    } 

클라이언트 측 :

<div 
    <%if (!sessionSet) 
     { 
     %> 
     style="display:none" 
     <% 
     } %> 
    > 
    </div> 

세션을 확인한 후 세션이 설정되지 않은 클라이언트가 페이지 소스에서이를 볼 수있는 경우 :

<div style="display:none"></div>