gpt4 book ai didi

validation - Asp.Net MVC EnableClientValidation 不起作用

转载 作者:行者123 更新时间:2023-12-03 22:37:02 25 4
gpt4 key购买 nike

我想要客户端验证和服务器端验证。我意识到这一点如下:

模型:(该模型有一个包含 Test 类的 DataModel(dbml))

namespace MyProject.TestProject
{
[MetadataType(typeof(TestMetaData))]
public partial class Test
{

}

public class TestMetaData
{
[Required(ErrorMessage="Please enter a name.")]
[StringLength(50)]
public string Name { get; set; }
}
}

Controller 没什么特别的。

风景:
<% Html.EnableClientValidation(); %>
<% using (Ajax.BeginForm("Index", "Test", FormMethod.Post,
new AjaxOptions {}, new { enctype = "multipart/form-data" }))
{%>
<%= Html.AntiForgeryToken()%>
<fieldset>
<legend>Widget Omschrijving</legend>
<div>
<%= Html.LabelFor(Model => Model.Name) %>
<%= Html.TextBoxFor(Model => Model.Name) %>
<%= Html.ValidationMessageFor(Model => Model.Name) %>
</div>
</fieldset>
<div>
<input type="submit" value="Save" />
</div>
<% } %>

为了使这一切工作,我还添加了对 js 文件的引用:
<script src="../../Scripts/MicrosoftAjax.js" type="text/javascript"></script>
<script src="../../Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script>
<script src="../../Scripts/MicrosoftMvcValidation.js" type="text/javascript"></script>
<script src="../../Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>

最终它必须工作,但它不能 100% 工作:
按下按钮后,它会在没有页面刷新的情况下进行验证。
它还进行“半”客户端验证。仅当您在文本框中键入一些文本然后退格键入的文本时。出现客户端验证。但是当我通过在控件之间点击来尝试此操作时,没有客户端验证。

我是否错过了一些引用资料或什么? (我使用 Asp.Net MVC 2 RTM)

最佳答案

更改加载的 javascript 的顺序...

<script src="../../Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
<script src="../../Scripts/MicrosoftAjax.js" type="text/javascript"></script>
<script src="../../Scripts/MicrosoftMvcAjax.js" type="text/javascript"></script>
<script src="../../Scripts/MicrosoftMvcValidation.js" type="text/javascript"></script>

有完全相同的问题,这为我清除了......

关于validation - Asp.Net MVC EnableClientValidation 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2500371/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com