如何使用jQuery调用cshtml文件中的函数?

时间:2015-06-26 17:44:50

标签: jquery razor asp.net-mvc-5

我创建了一个清除Session值的方法。但我不知道如何在jQuery中调用该方法。像这样:

在Index.cshtml中:

@functions{
    public void ClearSession(){
        Session["Value"] = null;
    }
}

并在jQuery中:

<script>
$(document).ready(function() {
// this.ClearSession() won't work here...
});
</script>

你能帮助我吗?

p / s:我使用的是MVC 5.

1 个答案:

答案 0 :(得分:0)

这是使用AJAX GET的简单解决方案。让你的服务器端控制器动作,我创建了一个名为HomeController的控制器。

[HttpGet]
public JsonResult ClearSession()
{
    Session["Value"] = null;
    return Json(true);
}

你的JQuery应该如下所示。

注意:如果需要,也可以在$(document).ready(fn)中进行相同的Ajax调用。

<script src="~/Scripts/jquery-1.10.2.min.js"></script>
<script>
    $(function () {
        $("#btnSubmit").click(function () {
            jQuery.ajax({
                type: "GET",
                url: "/home/ClearSession",
                success: function (data) { alert(data); },
                failure: function (errMsg) {
                  alert(errMsg);
                }
           });
        });
    });
</script>
<input type="button" value="Click" id="btnSubmit" />

然后当您单击该按钮时,它将点击控制器操作,如下所示 -

enter image description here