Как установить значение скрытого поля из контроллера в mvc

Я хочу установить значение скрытого поля из контроллера. Как я могу это сделать?

В части, которую я дал, вот так..

 <div>
@Html.Hidden("hdnFlag", null, new { @id = "hdnFlag" }) 
</div>
Комментарии к вопросу (2)

Пожалуйста, найдите код для уважаемого региона.

Контроллер

ViewBag.hdnFlag= Session["hdnFlag"];

Посмотреть

<input type="hidden" value="@ViewBag.hdnFlag" id="hdnFlag" />

JavaScript

var hdnFlagVal = $("#hdnFlag").val();
Комментарии (1)

Вы можете установить соответствующее значение в ViewData / ViewBag:

ViewData["hdnFlag"] = "some value";

Но гораздо лучший подход - это, конечно, использовать модель представления

model.hdnFlag = "some value";
return View(model);

и используйте сильно напечатанный помощник на ваш взгляд:

@Html.HiddenFor(x => x.hdnFlag, new { id = "hdnFlag" })
Комментарии (0)

Без модели представления вы можете использовать простой скрытый HTML-вход.

<input type="hidden" name="FullName" id="FullName" value="@ViewBag.FullName" />
Комментарии (0)

Вам нужно написать следующий код на контроллере предположим, что тест - это модель, а имя, адрес - это поле этой модели.

public ActionResult MyMethod()
{
    Test test=new Test();
    var test.Name="John";
    return View(test);   
}

теперь используйте вот так в вашем представлении, чтобы дать заданное значение скрытой переменной.

@model YourApplicationName.Model.Test

@Html.HiddenFor(m=>m.Name,new{id="hdnFlag"})

Это автоматически установит скрытое значение = john.

Комментарии (2)

Пожалуйста, попробуйте использовать следующий способ.

@Html.Hidden("hdnFlag",(object) Convert.ToInt32(ViewBag.page_Count))
Комментарии (2)

если вы не используете модель согласно вашему вопросу, вы можете сделать это

@Html.Hidden("hdnFlag" , new {id = "hdnFlag", value = "hdnFlag_value" })

иначе, если вы используете модель (учитывая, что проходящая модель имеет свойство hdnFlag), вы можете использовать это утверждение

@Html.HiddenFor(model => model.hdnFlag, new { value = Model.hdnFlag})
Комментарии (1)

Если вы собираетесь повторно использовать значение, такое как идентификатор, или если вы хотите просто сохранить его, вы можете добавить «new {id = 'desiredID / value'}) в качестве его параметров, чтобы вы могли получить доступ к значению через jquery / javascript

@Html.HiddenFor(model => model.Car_id)
Комментарии (0)

Вы можете перенести значение из контроллера, используя ViewData [""].

ViewData["hdnFlag"] = userId;
return View();

Теперь, на ваш взгляд.

@{
    var localVar = ViewData["hdnFlag"]
}
<input type="hidden" asp-for="@localVar" />

Надеюсь, это поможет...

Комментарии (0)