0
ここに私のコードがありますが、私はすべてを試しましたが、なぜクライアント側のjavascriptバリデーションが動作していないのか分かりません。私は言及を持っている私は、ビューweb.configファイル内のJavaScriptとメインweb.configファイルasp.netのjavascriptのバリデーションmvcがログインフォームで動作しない
<appSettings>
<add key="webpages:Enabled" value="false" />
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
</appSettings>
Modelクラス tblUser.cs
namespace MvcWebApplication.Models
{
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
public partial class tblUser
{
public int Id { get; set; }
[Required(ErrorMessage="Please Enter Your Email Id")]
[EmailAddress(ErrorMessage="Invalid Email Address")]
public string Email { get; set; }
[Required(ErrorMessage="Please Enter Your Password")]
[DataType(DataType.Password)]
[StringLength(18,ErrorMessage="The password must be atleast 6 characters long",MinimumLength=6)]
public string Password { get; set; }
}
}
私は私のビューのレイアウト・ページを使用していますが有効になっている
必要なスクリプトファイル _LoginLayout.cshtml
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<script src="~/Scripts/jquery-1.9.1.js"></script>
<script src="~/Scripts/jquery.validate.js"></script>
<script src="~/Scripts/jquery.validate.unobtrusive.js"></script>
<script src="~/Scripts/bootstrap.min.js"></script>
<link href="~/Content/bootstrap.min.css" rel="stylesheet" />
<link href="~/Content/css/Login.css" rel="stylesheet" />
<title></title>
</head>
<body>
<div>
@RenderBody();
</div>
</body>
</html>
そして、ここでは、私の見解である Index.cshtmlスクリプトのソースがOKであれば
@model MvcWebApplication.Models.tblUser
@{
ViewBag.Title = "Index";
Layout = "~/Views/Shared/_LoginLayout.cshtml";
}
<div class="container">
<div class="row" id="formcenter">
<div id="loginTitle">
<h3>LOGIN</h3>
</div>
@using (Html.BeginForm("Index", "Home", FormMethod.Post))
{
//To handle Cross-Site Request Forgery (CSRF) attcks.
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
<table class="center">
<tr>
<td>@Html.LabelFor(user => user.Email)</td>
<td>@Html.TextBoxFor(user => user.Email)</td>
<td>@Html.ValidationMessageFor(user => user.Email)</td>
</tr>
<tr class="rowspace">
<td>@Html.LabelFor(pass => pass.Password)</td>
<td>@Html.EditorFor(pass => pass.Password)</td>
<td>@Html.ValidationMessageFor(pass => pass.Password)</td>
</tr>
<tr class="rowspace">
<td colspan="3" id="button">
<input type="button" value="Log In" /></td>
</tr>
</table>
}
</div>
</div>
フォームはステファン・ミュエッケありがとう –
送信ボタンを持っていません。私の問題は解決されました。 –