![](/img/trans.png)
[英]How to get value of session variable using jQuery in external js file in ASP.NET MVC
[英]How to get the session value, tempdata in external JavaScript file in asp.net MVC?
我需要訪問外部js文件中的會話值。 我努力了,
var userid = '@HttpContext.Current.Session["UserID"]';
這不起作用,因為變量userid將右側作為字符串。 誰能建議我一個主意。
您可以通過調用外部.js
文件的函數來訪問.cshtml
的Session
變量,並將其傳遞給外部javascript文件。
var userid = '@Session["UserID"]';
externalJsFunction(userid);
您可以將會話分配給某個隱藏字段,並在外部js文件的document.ready中獲取隱藏字段值(會話值)。
我為您提供一種解決方案。 如果您使用的是html5,則在網站布局中定義任何空的div並將其數據屬性值設置為會話值,
<div id="sessionDiv" data-id="@Session["UserID"]"></div>
現在在您的外部js文件中訪問此div。
var userid=$('#sessionDiv').attr('data-id');
您可以在.cshtml
文件的頂部添加script
標簽,並將userid
分配給全局變量。 然后,可以在所有javascript文件中訪問此變量。
index.cshtml
...
<script>
document.mynamespace = {};
document.mynamespace.userid = '@HttpContext.Current.Session["UserID"]';
</script>
....
javascript.js
var userid = document.mynamespace.userid; //do something with userid
mynamespace是一個代理對象,因此您不會污染全局名稱空間。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.