【问题标题】:combine razor and javascript结合剃须刀和javascript
【发布时间】:2016-08-18 10:02:37
【问题描述】:

我怎样才能结合剃须刀和java脚本

我想这样做:

                @{Session["type"] = $(this).attr("id");}

我这样做了,但我遇到了错误。

我试过了,但它不适合我。

using javascript variable in MVC3 Razor view engine

这是我的代码:

                $(document).on("click", ".btn-group", function() {
                var t = $(this).attr("id");

                var text = "@{Session["type"] = "JSVar";}";
                text = text.replace("JSVar", t);
            });

谁能给我建议?

【问题讨论】:

  • Session 是服务器端。 Javascript是客户端。如果要设置会话属性的值,则需要将数据发送到服务器。
  • 我知道,使用查询字符串,但我可以这样做,因为我的操作无法获取新参数(某些原因)
  • 有任何方法可以在没有发布数据的情况下将数据发送到服务器(表单或操作链接)
  • 你不能从客户端设置服务器端变量
  • @user3726322 对此有何更新?

标签: javascript asp.net asp.net-mvc razor


【解决方案1】:

你不能。在这种情况下,您需要在控制器中执行此操作。此外,更改视图中的会话值也不是一个好习惯。试试这样的:

public ActionResult ChangeType(int type) {
    Session["type"] = type;
}

在你的 javascript 中:

$(document).on("click", ".btn-group", function() {
    $.ajax({
        url: "@Url.Action("ChangeType")",
        data: { type: $(this).attr("id") },
    });
});

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-04
    • 1970-01-01
    • 2013-02-22
    相关资源
    最近更新 更多