0

我正在疯狂地寻找它,但我找不到任何解决我问题的方法。我想要的只是用javascript变量的值在剃刀中设置会话。

我的代码是:

  function SetParameter() {
    var OrderShipmentInd = "";
    if ($("#rdoOrd").attr("checked") == "checked")
        OrderShipmentInd = "O";
    else
        OrderShipmentInd = "S";

    @Session["OrderShipmentInd"] = OrderShipmentInd;
}

我收到错误“条件编译已关闭”。当我使用 /*@("@cc_on @")*/ 删除此错误时,它不起作用。我的页面没有呈现。

请任何人帮助,如何做到这一点。这个世界有专家吗?

4

1 回答 1

1

你不能那样做。

会话在服务器上运行,但 javascript 在客户端上运行。要将该值放入会话中,您应该使用 ajax get/post 到控制器操作中,或者将整体发布到控制器/操作中并将其添加到那里。

例如

Javascript

function SetParameter() {
    var OrderShipmentInd = "";
    if ($("#rdoOrd").attr("checked") == "checked")
        OrderShipmentInd = "O";
    else
        OrderShipmentInd = "S";

    $.get ('/OrderShipment', { order: OrderShipmentInd });
}

MVC 动作

public ActionResult OrderShipment(string order)
{
      @Session["OrderShipmentInd"] = order;
      //..
}
于 2013-06-19T06:42:52.723 回答