컨트롤러에서 숨겨진 필드의 값을 설정하고 싶은데 어떻게 해야 하나요?
뷰 파트에서 다음과 같이 제공했습니다.
<div>
@Html.Hidden("hdnFlag", null, new { @id = "hdnFlag" })
</div>
뷰데이터/뷰백`에서 해당 값을 설정할 수 있습니다:
ViewData["hdnFlag"] = "some value";
하지만 훨씬 더 나은 접근 방식은 물론 뷰 모델을 사용하는 것입니다:
model.hdnFlag = "some value";
return View(model);
를 사용하고 뷰에 강력하게 입력된 도우미를 사용하는 것입니다:
@Html.HiddenFor(x => x.hdnFlag, new { id = "hdnFlag" })
컨트롤러에 다음 코드를 작성해야 합니다. 테스트가 모델이고 이름, 주소가 이 모델의 필드라고 가정합니다.
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이 자동으로 설정됩니다.