[ASP.NET] asp:hiddenfield로 보는 히든 필드 사용 이유

Ceing·2025년 3월 12일
0

ASP.NET

목록 보기
8/13
post-thumbnail

용도

  • 특정 값을 백엔드와 프론트엔드 사이에서 연결시키며 해당 값에 대한 상태를 유지하고, 표시하지 않음에 따라 유연하게 설계가 가능
  • 백엔드(C#)에서 설정한 값을 프론트엔드(JavaScript)에서 사용할 수 있도록 하기 위함

주요 목적

  1. 페이지에서 해당 값의 상태를 지속적으로 유지시킬 수 있음(Stateful), ViewState보다 가벼움, 새로고침해도 값 유지가 됨

  2. UI에 직접 표시되지 않아서 보안 및 디자인 측면에서 유연하게 설계 가능

  3. 백엔드 <=> 프론트엔드 간 히든필드 데이터 연결이 됨 <%= %>를 통해 JavaScript, JQuery에서 직접 사용이 가능(Thymeleaf 문법은 JS에서 잘 적용이 되지 않았는데 굉장히 유용하군)


활용 예시

요구사항

  • 사용자가 날짜 입력하면 해당 날짜에 대한 데이터 출력되고, 날짜가 선택 안되면(즉 초기값) 현재 날짜에 대한 데이터가 출력되게끔 할 것임
  • 즉 백엔드(C#)에서 선택이 안되면 현재 날짜를 프론트(JS)로 넘기고 선택되면 해당 날짜를 넘기고자 할 것임, 데이터 랜더링은 백엔드에서 해주는 것이고

매커니즘

  1. <asp:HiddenField ID="hfSearchDate">
  2. C# 코드 비하인드에서 히든 필드 값에 현재 날짜 할당 혹은 사용자가 입력한 값 할당 후 hfSearchDate.Value=날짜값 으로 넘김
  3. <asp:HiddenField ID="hfSearchDate"> 에 날짜값 할당
  4. JavaScript, JQuery로 해당 필드 꺼내서 동작할 수 있음

결론

해당 히든 필드를 통해 백엔드와 프론트엔드를 자유롭게 연결시키고 값을 상태유지시킨다는 점이 굉장히 좋군!

profile
이유에 대해 끊임없이 생각하고 고민하는 개발자

0개의 댓글