Я хочу установить значение скрытого поля из контроллера. Как я могу это сделать?
В части представления я дал вот так ..
<div>
@Html.Hidden("hdnFlag", null, new { @id = "hdnFlag" })
</div>
Я хочу установить значение скрытого поля из контроллера. Как я могу это сделать?
В части представления я дал вот так ..
<div>
@Html.Hidden("hdnFlag", null, new { @id = "hdnFlag" })
</div>
Вы можете установить соответствующее значение в ViewData/ViewBag
:
ViewData["hdnFlag"] = "some value";
Но гораздо лучший подход, конечно, использовать модель представления:
model.hdnFlag = "some value";
return View(model);
и используйте строго типизированный помощник в своем представлении:
@Html.HiddenFor(x => x.hdnFlag, new { id = "hdnFlag" })
Пожалуйста, найдите код для уважаемого региона.
Контроллер
ViewBag.hdnFlag= Session["hdnFlag"];
Вид
<input type="hidden" value="@ViewBag.hdnFlag" id="hdnFlag" />
JavaScript
var hdnFlagVal = $("#hdnFlag").val();
Без модели представления вы могли бы использовать простой скрытый ввод HTML.
<input type="hidden" name="FullName" id="FullName" value="@ViewBag.FullName" />
Вам нужно написать следующий код на контроллере, предположим, что тест является моделью, а имя, адрес - полем этой модели.
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.
Пожалуйста, попробуйте использовать следующий способ.
@Html.Hidden("hdnFlag",(object) Convert.ToInt32(ViewBag.page_Count))
если вы не используете модель в соответствии с вашим вопросом, вы можете сделать так
@Html.Hidden("hdnFlag" , new {id = "hdnFlag", value = "hdnFlag_value" })
иначе, если вы используете модель (учитывая, что передающая модель имеет свойство hdnFlag), вы можете использовать этот подход
@Html.HiddenFor(model => model.hdnFlag, new { value = Model.hdnFlag})
Если вы собираетесь повторно использовать значение как идентификатор или хотите просто сохранить его, вы можете добавить «new {id = 'desiredID/value'}) в качестве его параметров, чтобы вы могли получить доступ к значению через jquery/javascript
@Html.HiddenFor(model => model.Car_id)
Вы можете передать значение из контроллера, используя ViewData[""]
.
ViewData["hdnFlag"] = userId;
return View();
Теперь, в вашем представлении.
@{
var localVar = ViewData["hdnFlag"]
}
<input type="hidden" asp-for="@localVar" />
Надеюсь, это поможет...