我有一个ASP.NET MVC5项目,在其中我使用setSession()(它是userId)在控制器中设置会话值。
然后我需要在.js文件中检索或获取该值(并将其设置为TextBox)

但无法在.js文件中获取该值。

以下是我的.js文件代码

function populateUser() {
        debugger;
        $.ajax({
            type: "GET",
            url: '/UserProfile/SetSessionValues',
            contentType: "application/json; charset=utf-8",
            dataType: "json",
            async: true,
            success: function (data) {
                if (data) {
                    var user = $.session.get("UserName");
                    $("#txtUserName").val(user);

                                }
            },
            error: function (msg) {
                alert("Error :" + msg.responseText);
            },

        });
    }

最佳答案

在您的控制器中:

ViewBag.myVar = HttpContext.current.Session["UserName"].ToString();


您可以将参数指定为控制值

<input type="hidden" value = "@ViewBag.myVar" id="myHiddenVar" />


并轻松地在js文件中获取

alert($('#myHiddenVar').val());

关于c# - 如何在ASP.NET MVC中使用外部js文件中的jQuery获取 session 变量的值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22756299/

10-11 01:30