반응형
@ Html.BeginForm 페이지에“System.Web.Mvc.Html.MvcForm”표시
'if'문 내부에 삭제 버튼을 추가 한 면도기보기가 있으며보기가 브라우저에서 렌더링 될 때 삭제 버튼 옆에 "System.Web.Mvc.Html.MvcForm" 이 표시 됩니다.
어떻게 제거합니까?
다음은 코드입니다.
<div id="deletestatusupdate">
@if (update.User.UserName.Equals(User.Identity.Name, StringComparison.OrdinalIgnoreCase))
{
@Html.BeginForm("deleteupdate", "home")
@Html.Hidden("returnUrl", Request.Url.ToString())
<button name="id" value="@update.StatusUpdateId">Delete</button>
}
</div>
렌더링 된 Razor보기에 표시되는 방법은 다음과 같습니다.
System.Web.Mvc.Html.MvcForm [삭제 버튼]
[삭제 버튼]이 실제 버튼 인 척하고 스크린 샷을 찍는 것 같지 않았습니다.
도와 주셔서 감사합니다.
양식을 생성하는 권장 방법은 다음과 같습니다.
<div id="deletestatusupdate">
@if (update.User.UserName.Equals(User.Identity.Name, StringComparison.OrdinalIgnoreCase))
{
using(Html.BeginForm("deleteupdate", "home"))
{
@Html.Hidden("returnUrl", Request.Url.ToString())
<button name="id" value="@update.StatusUpdateId">Delete</button>
}
}
</div>
또는 다음을 수행 할 수 있습니다.
<div id="deletestatusupdate">
@if (update.User.UserName.Equals(User.Identity.Name, StringComparison.OrdinalIgnoreCase))
{
Html.BeginForm("deleteupdate", "home");
@Html.Hidden("returnUrl", Request.Url.ToString())
<button name="id" value="@update.StatusUpdateId">Delete</button>
Html.EndForm();
}
</div>
원래 접근 방식이 작동하지 않은 이유 BeginForm()
는 출력에 직접 쓰기 때문 입니다.
문제를 사용하는 대신 @using을 사용하십시오. MVC 4를 사용하고 있습니다.
@using(Html.BeginForm("deleteupdate", "home"))
{
@Html.Hidden("returnUrl", Request.Url.ToString())
<button name="id" value="@update.StatusUpdateId">Delete</button>
}
이것을 위해 우리는 그들을 사용할 수 있습니다
Using(Html.Beginform("Delete", "Home", new { Id = item.id } ))
{
@* We right the code. *@
}
반응형
'Programming' 카테고리의 다른 글
다른 작업을 수행하는 동안 커밋되지 않은 변경 사항을 제쳐두고 어떻게해야합니까? (0) | 2020.08.26 |
---|---|
HTML / CSS를 사용하여 이미지 주위에 텍스트를 감싸는 방법 (0) | 2020.08.26 |
Get : TypeError : 'dict_values'객체는 파이썬 3.2.3을 사용할 때 인덱싱을 지원하지 않습니다. (0) | 2020.08.26 |
indexOf와 배열의 findIndex 함수의 차이점 (0) | 2020.08.26 |
터미널에서 열린 파일의 기본 편집기를 변경 하시겠습니까? (0) | 2020.08.26 |