gpt4 book ai didi

c# - 如何在 MVC View 中使用 jquery/ajax 验证空格

转载 作者:太空狗 更新时间:2023-10-30 01:23:19 26 4
gpt4 key购买 nike

我有一个包含表单的 MVC View ,现在需要验证在特定文本字段中输入的数据。我只需要确保没有空格。有人可以给我一个在我看来使用 jquery/ajax 脚本的表单验证示例吗?

最佳答案

将验证构建到 View 模型的一部分可能是个好主意,这样您的模型中就会有类似以下内容:

[RegularExpression(@"^[\S]*$", ErrorMessage = "White space found")]
public string MyField {get;set;}

然后您可以在您的 View 中执行以下操作:

@Html.TextBoxFor(model => Model.MyField , new { })
@Html.ValidationMessageFor(model => Model.MyField)

要让客户端正常工作,您必须启用客户端验证和不显眼的 JS,您可以通过在 <appSettings> 中设置以下内容来实现您的主要部分web.config

<add key="ClientValidationEnabled" value="true"/>
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>

您还需要携带 jquery.validate.jsjquery.validate.unobtrusive.js文件到您的页面。当您在 MVC3 中创建新项目时,它们都应该捆绑在脚本文件夹中。

<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>

最后,在服务器端操作方法上,您需要看起来有点像这样的东西:

    [HttpPost]
public ActionResult Index(Thing myThing) {

if (ModelState.IsValid) {
//Do some work in here because we're all good
return RedirectToAction("MyOtherAction");
}

//Oops the validation failed so drop back to the view we came from
return View();
}

完全依赖客户端 JS 是危险的,因为理论上可以绕过导致损坏的数据到达服务器端。

上面的正则表达式应该可以完成您想要的验证,但我的正则表达式技能有点生疏。

关于c# - 如何在 MVC View 中使用 jquery/ajax 验证空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11544299/

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