Как присвоить значение для временных данных MVC с помощью JQuery

Я знаю, как получить значение MVC TempData с помощью JQuery, но здесь я пытаюсь присвоить какое-то значение TempData с помощью JQuery. Можно ли присвоить значение для MVC TempData с помощью JQuery?

Я использую бритву MVC4, нажав на какой-то текст, он должен перенаправить на страницу ActionResult Index (), затем запросить в БД, где присвоено значение TempData, и затем ответить на ту же страницу. Я не хочу отображать мое значение в адресной строке.

Представление содержит следующий код

<div onclick="getorder(1)">Test</div>

<script type="text/javascript">
$(document).ready(function () {
    getorder = function (id) {
        alert("Test Message");
        '@TempData["OrdID"]' = id;
        //here redirect to ActionResult
    }
});

Контроллер ActionReslut Index()

 public ActionResult Index()
 {
     ViewModel.CheckOut model = new ViewModel.CheckOut();
     if (TempData["ordID"] != null)
     {                
        int OrderID = int.Parse(TempData["OrdID"].ToString());                
        if (OrderID != 0)
        {
            model.OrderedLineItems = db.OrderedLineItemRepository.GetAllByRefID(f => f.OrderIDFlag == OrderID).ToList();
        }
     }
     return View(model);
 }

1 ответ

Вы можете попробовать Query Strings (GET Param), или вы можете поместить javascript в то же представление HTML (не рекомендуется).

Другие вопросы по тегам