私のアプリでデータアノテーションを使用したいのですが、問題は送信ボタンをクリックして必要なフィールドに入力しないとエラーメッセージが表示されずに送信されます。コントローラでは、model.stateは正常に動作しますが、エラーメッセージが表示されるはずです。データアノテーションにエラーメッセージが表示されない
モデル:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;
namespace ValidationTest.Models
{
public class User
{
[Required(ErrorMessage = "Enter your name.")]
public string Name { get; set; }
public string Lastname { get; set; }
}
}
ビュー:
@model ValidationTest.Models.User
@{
ViewBag.Title = "Index";
}
<!DOCTYPE html>
<html>
<head>
</head>
<body>
@using (Html.BeginForm("Record", "Home"))
{
@Html.Label("Name:")
@Html.TextBoxFor(m => m.Name)
@Html.ValidationMessageFor(m => m.Name)
<br />
@Html.Label("Lastname:")
@Html.TextBoxFor(m => m.Lastname)
@Html.ValidationMessageFor(m => m.Lastname)
<input type="submit" value="Record" />
}
</body>
</html>
コントローラ:
:スクリプトでusing System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using ValidationTest.Models;
namespace ValidationTest.Controllers
{
public class HomeController : Controller
{
// GET: Home
public ActionResult Index()
{
return View();
}
[HttpPost]
public ActionResult Record(User usr)
{
if (ModelState.IsValid)
{
return Content("It Worked!");
}
return RedirectToAction("Index");
}
}
}
は私が持っているASP.NET MVCプロジェクト内のフォルダ
bootstrap.js
bootstrap.min.js
jqueryの-3.2.1.intellisense.js
jqueryの - 3.2.1.js
jqueryの-3.2.1.min。 JS
jquery-3.2.1.min.map
jqueryの-3.2.1.slim.js
jqueryの-3.2.1.slim.min.js
jqueryの-3.2.1.slim.min.js
modernizr-2.6.2.js
jquery.validate.jsおよびjquery.validate.unobtrusive.jsがクライアント側の検証に必要です –