m.Cit-6ren">
gpt4 book ai didi

jquery - 发布 ASP.NET MVC 表单之前进行验证

转载 作者:行者123 更新时间:2023-12-01 03:53:14 25 4
gpt4 key购买 nike

我有这个:

@using (Html.BeginForm("Action", "Controller", FormMethod.Post))
{
@Html.TextBoxFor(m => m.City, new { id = "tbCity", maxlength = 50 })
<input type="submit" value="Save" class="btSave" />
}

我想做一个 sublit 进行一些验证(检查“tbCity”是否作为长度!= 0),我创建了一个具有所有验证的函数,我如何在这里调用?如果验证不正确则取消?

谢谢

更新1

@亚当·波普:想象一下,我有一个名为“Person”(名字,姓氏,...)的数据模型,一个带有 public Person Person{ get; 的模型类。放; },哪里使用 [Required] 属性?

最佳答案

如果您使用的是 ASP.NET MVC 2 或 3,那么您应该查看 DataAnnotations

http://weblogs.asp.net/scottgu/archive/2010/01/15/asp-net-mvc-2-model-validation.aspx
http://www.asp.net/mvc/tutorials/creating-a-mvc-3-application-with-razor-and-unobtrusive-javascript

它们允许您在域模型上指定验证约束,并让 UI 自动为您生成验证代码。

在这种情况下,您可能有一个模型

public class MyModel
{
[Required]
public string City { get; set; }
}

然后你的 View 使用该模型

@model MyModel

@Html.TextBoxFor(x => x.City)
@Html.ValidationMessageFor(x => x.City)

更新

对于下拉菜单,我倾向于执行以下操作,不能 100% 确定它是最佳的,但它有效

public class MyModel
{
[Range(1,int.MaxValue,ErrorMessage="Please select a value")]
public int OtherModelID { get; set; }

public IList<OtherModel> OtherModels {get; set; }
}

然后在 View 中

@model MyModel

<select id="OtherModelID" name="OtherModelID">
<option value="0">Please Select</option>
@foreach(var m in Model.OtherModel)
{
<option value="m.ID">m.Name</option>
}
</select>

如果您位于编辑屏幕上,您也可以在其中放置一个条件来选择当前值。

关于jquery - 发布 ASP.NET MVC 表单之前进行验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5788486/

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