다음과 같이 정의 된 ActionLink가 있습니다.
@Html.ActionLink("Write a review", "Create", "Reviews")
요점은 Reviews 컨트롤러의 만들기보기로 리디렉션 할 때 ID가 BusinessID 인 선택 필드가 있다는 것입니다. 따라서 페이지를 열 때 선택 필드의 값을 특정 항목으로 설정하고 싶습니다. 설정하고 싶은 값이 피카소라고합시다. 어떻게 할 수 있습니까? htmlAttributes를 사용하여 어떻게 든 할 수 있습니까?
ReviewsController 의 Create 작업 메서드 에서 선택한 항목의 id 매개 변수를 수락 한 다음 @ Html.ActionLink () 의 개체 routeValues 매개 변수 를 사용 하여 선택으로 설정하려는 특정 ID를 보낼 수 있습니다. 이 같은:
@Html.ActionLink("Write a review", "Create", "Reviews", new {id = 1}, null);
그러면 Create 작업 메서드가이 ID를 수락해야합니다 (예 :
public ActionResult Create(int id)
{
List<SelectListItem> items = new List<SelectListItem>(); //create <option> </option> items of DropDownList
items.Add(new SelectListItem { Text = "da Vinci", Value = "0", Selected = (id == 0)});
items.Add(new SelectListItem { Text = "Picasso", Value = "1", Selected = (id == 1)});
items.Add(new SelectListItem { Text = "van Gogh", Value = "2", Selected = (id == 2)});
ViewBag.Painters = items;
return View();
}
선택한 항목에 따라 Create.chtml 을 렌더링합니다 .
@Html.DropDownList("Painters")
참고 DropDownList
매개 변수 ("Painters")
A와 같은 이름을 가져야한다 ViewBag.Painters
. 결과적으로 링크를 클릭하면 선택한 항목을 Picasso로 가져옵니다 Selected
. 이는 Create action 메서드에서 할당 했으므로 속성이 true 이기 때문입니다 .
이 드롭 다운 목록을 작성하는 더 현명한 방법이있을 수 있다고 생각하지만이 작업 방법은 잘 작동합니다. www.asp.net 및 K.Scott Allen 링크에서 @ Html.DropDownList 도우미 메서드에 대해 자세히 읽어 보시기 바랍니다 . 도움이 되었기를 바랍니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다