2016-08-18 86 views
1

我怎麼能結合剃刀和Java Script結合剃刀和JavaScript

我想這樣做:

   @{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); 
      }); 

任何一個可以給我建議?

+2

'Session'是服務器端。 Javascript是客戶端。如果要設置會話屬性的值,則需要將數據發送到服務器。 –

+0

我知道,與查詢字符串,但我可以做到這一點,因爲我的行動不能獲得新的參數(某些原因) – user3726322

+0

有任何方式發送數據到服務器沒有發佈數據(表單或操作鏈接) – user3726322

回答

0

你不能。在這種情況下,您需要在控制器中執行此操作。此外,更改視圖中的會話值不是一個好習慣。嘗試是這樣的:

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") }, 
    }); 
});