로
@using(Html.BeginForm()){
@Hml.ValidationSummary()
<input type="submit" value ="Save">
}
동일합니다.
귀하의 Html.BeginForm
정의는 잘못된 것입니다 : 당신이 htmlAttributes
와 routeValues
을 혼동하고 있습니다.
이 ID를 가지고 있지 않습니다 버튼 그래서 당신의 자바 스크립트 선택은 대부분의 아마 간단한 <input type="submit">
버튼은 상자 밖으로 않기 때문에 그 모든 노력이 필요하지 않습니다
실패 솔루션
은 아래를 참조하십시오.
지금 어떻게 든 당신이 자바 스크립트의 팬 있다고 가정 할 수 있습니다 당신은 (당신이 어쨌든 코드 만을 작성하려는 이유를 모르겠다)를 작성합니다. 그래서 양식 정의 고정하여 시작합니다
@using(Html.BeginForm("someAction", "someController", FormMethod.Post, new { id = "FormTest" }))
{
@Html.ValidationSummary()
@Html.TextBoxFor(x => x.Foo)
<input type="button" value="Save" id="Save" />
}
을 다음이가 할 수있는 :
<script src="@Url.Content("~/Scripts/jquery.validate.js")" type="text/javascript"></script>
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.js")" type="text/javascript"></script>
:
분명히
$('#Save').click(function() {
var form = $('#FormTest');
if (form.valid()) {
form.submit();
}
});
클라이언트 스크립트가 제대로 페이지에 포함되어 있는지 확인해야합니다
그리고 물론 내가 추천하는 실제 해결책은 양식 제출에 제출 버튼을 사용하는 것입니다.
@using(Html.BeginForm("someAction", "someController", FormMethod.Post, new { id = "FormTest" }))
{
@Html.ValidationSummary()
@Html.TextBoxFor(x => x.Foo)
<input type="submit" value="Save" id="Save" />
}
지금 당신이 어떤 자바 스크립트가 필요하지 않습니다 (분명히 당신은 여전히 눈에 거슬리지 검증을 위해 두 개의 스크립트 흠이 필요합니다).
예 확인을 지원합니다. –
오류 메시지가 표시됩니까? – learning
클라이언트 측 유효성 검사가 활성화 되었습니까? –