[英]javascript validation in asp.net mvc not working for login form
這是我嘗試過的所有代碼,但我不知道為什么客戶端javascript驗證不起作用。請幫助。
我已經在視圖web.config和主web.config中啟用了javascript
<appSettings>
<add key="webpages:Enabled" value="false" />
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
</appSettings>
模型類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
@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>
檢查腳本的來源是否正確
>
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<script src="~/Scripts/jquery-1.9.1.js"></script>
<script src="~/anything/Scripts/jquery.validate.js"></script>
<script src="~/anything/Scripts/jquery.validate.unobtrusive.js"></script>
<script src="~/anything/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>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.