웹 애플리케이션을 브라우저에서 두 개의 별도 탭으로 여는 시나리오가 있습니다.
한 탭에서 응용 프로그램에서 로그 아웃 한 결과 모든 세션 값이 null이됩니다. 다른 탭에서 웹 응용 프로그램의 앵커 태그를 클릭했습니다. 앵커 태그의 jquery-on 클릭 이벤트에서 세션 값을 확인했습니다. 여기에서 세션을 null로 가져와야합니다 (다른 탭에서 응용 프로그램을 로그 아웃했기 때문에). 사용자가 로그인 한대로 세션 값을 얻습니다 (아마도 페이지 새로 고침이 발생하지 않기 때문일 것입니다).
제 생각은 jQuery에서 세션을 확인하고 세션이 null 인 경우 응용 프로그램을 로그 아웃하고 팝업 페이지를 표시하는 것입니다 ..
세션 값을 얻는 코드는 다음과 같습니다
$(".a".click(function(){
var session=var data = '@Session["UserName"]';
if(session!=null){
//Show popup
}
else{
//Show loginpage
}
}))
jQuery에서 현재 세션 값을 얻으려면 어떻게해야합니까?
- 답변 # 1
- 답변 # 2
다른 접근법은 chtml에서
<input type="hidden" id="hdnSession" data-value="@Request.RequestContext.HttpContext.Session['someKey']" />
그리고 스크립트는
var sessionValue= $("#hdnSession").data('value');
또는 다음을 통해 직접 액세스 할 수 있습니다
jQuery(document).ready(function ($) { var value = '@Request.RequestContext.HttpContext.Session["someKey"]'; });
- 답변 # 3
자바 스크립트를 사용하여 세션 변수 액세스 및 할당 :
자바 스크립트를 사용하여 ASP.NET 세션 변수 할당 :
<script type="text/javascript"> function SetUserName() { var userName = "Shekhar Shete"; '<%Session["UserName"] = "' + userName + '"; %>'; alert('<%=Session["UserName"] %>'); } </script>
Javascript를 사용하여 ASP.NET 세션 변수에 액세스 :
<script type="text/javascript"> function GetUserName() { var username = '<%= Session["UserName"] %>'; alert(username ); } </script>
이미 답변 됨
- 답변 # 4
내가 해결 한 방법은 컨트롤러에서 함수를 작성하고 jquery 클릭 이벤트에서 아약스를 통해 액세스하는 것입니다 .pp
먼저 위의 시나리오를 구현하는 방법에 대한 아이디어를 주신 @Stefano Altieri에게 감사의 말을 전합니다. 세션이 만료되면 클라이언트 측에서 현재 세션 값에 액세스 할 수 없습니다.
또한 적절한 질문을 읽으면 질문에주의 깊게 대답하는 데 도움이된다고 말하고 싶습니다.
- 답변 # 5
이 방법을 시험해 보니 저에게 효과적이었습니다. 유용하길 바랍니다.
index.php
라는 파일이 있다고 가정 사용자가 로그인하면 사용자 이름을 PHP 세션에 저장합니다. 전의. $_SESSION [ '사용자 이름'];index.php 파일에서 이와 같은 작업을 수행 할 수 있습니다
<script type='text/javascript'> var userName = "<?php echo $_SESSION['username'] ?>"; //dont forget to place the PHP code block inside the quotation </script>
이제 index.php 파일 또는 index.php에 연결된 .js 파일의 다른 스크립트 블록에서userId변수에 액세스 할 수 있습니다
ex. index.js 파일
$(document).ready(function(){ alert(userId); })
데이터베이스 테이블 등을 업데이트하기 위해 ajax 쿼리에서 쿠키로 보관 된 사용자 이름 및 기타 사용자 데이터를 사용할 수 있기 때문에 매우 유용 할 수 있습니다.
정보를 포함하기 위해 자바 스크립트 변수를 사용하지 않으려면 "type = 'hidden';
ex. index.php 파일에 다음을 작성하십시오 :
그러나 사용자가 브라우저에서 페이지의 소스 코드를 표시하도록 요청하면 숨겨진 입력을 볼 수 있습니다. 소스보기에서 숨겨진 입력은 해당 컨텐츠와 함께 표시됩니다. 그게 바람직하지 않을 수도 있습니다.<?php echo "<input type='hidden' id='username' value='".$_SESSION['username']."'/>"; ?>
관련 자료
- Javascript Ajax 배열 값만 표시하는 방법
- 자바 스크립트 객체에 대해 상수 값을 가질 수 있습니까?
- typescript - 계산 된 속성 메서드 내에서 계산 된 속성의 현재 값을 읽는 방법은 무엇입니까?
- html - JavaScript의 함수에서 값을 얻는 방법
- node.js - 자바 스크립트의 마지막 배열 값에서 \ r 제거
- 자바 스크립트를 사용하여 클릭했을 때 를 사용하여 URL에 값을 추가하는 방법
- JavaScript null 값을 요청하는 더 빠른 방법
- html - 자바 스크립트에서 값을 비교하는 방법이 있습니까?
- 배열 값을 객체 배열의 값과 일치
- html - 자바 스크립트로 구성 요소의 translateX 값을 얻는 방법은 무엇입니까?
- Javascript Regex의 시퀀스에서 일치하는 값을 반환하는 방법
- django - 확장 가능한 html 템플릿에 session 값 보내기
- angularjs - CRM javascript 값을 null로 설정하는 방법은 무엇입니까?
- php - 자바 스크립트 드롭 다운 선택 시간 조건 전류
- 자바 스크립트에서 문자열을 이름 값 쌍으로 변환하는 방법
- html - 자바 스크립트 - 값이… 일 때 표의 텍스트 색상 변경
- javascript/ReactJS의 끝점에서 오는 HTML 값을 추출합니까?
- 값을 일치시켜 2 개의 배열을 그룹화하고 합하는 자바 스크립트
- JSON의 중첩 배열에서 값을 인쇄하는 javascript
- 자바 스크립트, 파일에 현재 URL 저장 및 저장된 파일에 추가 코드 추가
- javascript : Enter 키를 눌렀을 때 트리거되는 제출 버튼을 제어할 수 있습니까?
- c# : PDF417 바code 스캔의 줄 바꿈으로 인해 Chrome에서 다운로드 탭이 열립니다.
- javascript : 라디오 버튼이 선택된 행의 ID 가져오기
- c# : JavaScript에서 경로 매개변수를 얻는 방법은 무엇입니까?
- JQuery 모달은 IE6의 목록 상자 맨 위에 표시되지 않습니다.
- c# : gridview에서 드롭다운 목록 항목 숨기기 및 표시
- javascript : jquery를 사용하여 컨트롤러 메서드를 호출하지만 해당 뷰로 리디렉션하지 않는 메서드
- Ajax에서 C# code 비하인드로 사전 전달
- jQueryUI 1.13.0은 jQueryUI 1.12.1과 함께 작동하는 ASP.NET의 대화 상자 기능을 중단합니다.
- c# : ASP.NET MVC 응용 프로그램의 세션 기간 설정이 Web.config에서 작동하지 않음
세션은 서버 측이므로 jQuery를 사용하여 액세스 할 수 없습니다. Http 핸들러를 작성하고 (있는 경우 sessionid를 공유 함)
$.ajax
를 사용하여 값을 리턴 할 수 있습니다. .