Asp.net mvc 4 数据注释不适用于所选jquery插件
我有一个表单,它有多个htmlhelper控件,比如文本框和下拉列表。我使用数据注释对各个字段进行验证,并使用qtip显示验证消息。我还使用了所选的jquery插件来增强UI。如果选择的插件被调用,则数据注释不起作用。验证对itemlist起作用,但对其他两个不起作用。。请帮助任何输入。这是我的密码: 我的看法 IndentItem.cshtmlAsp.net mvc 4 数据注释不适用于所选jquery插件,asp.net-mvc-4,data-annotations,jquery-chosen,html.dropdownlistfor,Asp.net Mvc 4,Data Annotations,Jquery Chosen,Html.dropdownlistfor,我有一个表单,它有多个htmlhelper控件,比如文本框和下拉列表。我使用数据注释对各个字段进行验证,并使用qtip显示验证消息。我还使用了所选的jquery插件来增强UI。如果选择的插件被调用,则数据注释不起作用。验证对itemlist起作用,但对其他两个不起作用。。请帮助任何输入。这是我的密码: 我的看法 IndentItem.cshtml if (ViewBag.isCreate == true) { <td> @Html.HiddenFor(mod
if (ViewBag.isCreate == true)
{
<td>
@Html.HiddenFor(model => model.Id)
@Html.HiddenFor(model => model.IndentId)
@Html.HiddenFor(model => model.ItemCode)
@Html.HiddenFor(model => model.ItemType)
@Html.DropDownListFor(model => model.DepartmentMachineId, Model.DepartmentMachineList, new { @class = "machineList input-medium" })
@Html.ValidationMessageFor(model=>model.DepartmentMachineId)
</td>
<td>
@Html.DropDownListFor(model => model.ItemName, Model.ItemNameList, new { @class = "itemList input-medium" })
</td>
<td>
@Html.DropDownListFor(model => model.CategoryName, Model.CategoryNameList, new { @class = "catList input-medium" })
</td>
<td>
@Html.DropDownListCustomFor(model => model.ItemId, Model.ItemCodeList, new { @class = "codeList input-medium" })
</td>
<td>
@Html.TextBoxFor(model => model.ItemUnitDescription, new { placeholder = "unit type", @class = "input-small", @readonly = "true" })
</td>
<td>
@Html.TextBoxFor(model => model.RequestedQuantity, new { placeholder = "quantity", @class = "input-small" })
</td>
<div class="form-actions">
<button type="submit" class="btn btn-blue" >Save changes</button>`</div>
您希望出现什么样的验证错误?我希望dropdownlist出现必需的错误..但这是一个错误,因此始终会选择某些内容,除非您使用javascript将elements selectedIndex属性设置为-1,或者您可以使用重载添加空选项@Html.dropdownlist=>m.ItemName,Model.ItemNameList,-请选择name-,new{@class=itemList input medium}是的,我有一个javascript,它将第一个选项设置为text select an option..我也尝试过做你提到的..但我仍然有同样的问题。
public class IndentItem
{
/// <summary>
/// Autogenerated Purchase Indent ID
/// </summary>
[DisplayName("S.No")]
[DataType(DataType.Text)]
[StringLength(10)]
[Editable(false)]
[Required(ErrorMessage = "S.No Required")]
[Key()]
public string Id { get; set; }
[DataType(DataType.Text)]
[Editable(false)]
[Required(ErrorMessage = "Indent Id Required")]
public string IndentId { get; set; }
/// <summary>
/// machine number
/// </summary>
[DisplayName("Machine number")]
[DataType(DataType.Text)]
[StringLength(50)]
[Editable(true)]
[Required(ErrorMessage = "Machine number Required")]
public string DepartmentMachineId { get; set; }
public IEnumerable<SelectListItem> DepartmentMachineList { get; set; }
/// <summary>
/// Item name
/// </summary>
[DisplayName("Item name")]
[DataType(DataType.Text)]
[StringLength(50)]
[Editable(true)]
[Required(ErrorMessage = "Item name Required")]
public string ItemName { get; set; }
[DisplayName("Item ID")]
[DataType(DataType.Text)]
[StringLength(50)]
[Editable(true)]
[Required(ErrorMessage = "Item ID Required")]
public string ItemId { get; set; }
/// <summary>
/// Type of units
/// </summary>
[DisplayName("???")]
[DataType(DataType.Text)]
[StringLength(50)]
[Editable(true)]
public string ItemType { get; set; }
public string ItemUnitDescription { get; set; }
/// <summary>
/// Category
/// </summary>
[DisplayName("Category")]
[DataType(DataType.Text)]
[StringLength(50)]
[Editable(true)]
[Required(ErrorMessage = "Category Required")]
public string CategoryName { get; set; }
/// <summary>
/// List of possible categories
/// </summary>
[DisplayName("Category")]
public IEnumerable<SelectListItem> CategoryNameList { get; set; }
/// <summary>
/// Item code
/// </summary>
[DisplayName("Item code")]
[DataType(DataType.Text)]
[StringLength(50)]
[Editable(true)]
[Required(ErrorMessage = "Item code Required")]
public string ItemCode { get; set; }
/// <summary>
/// List of possible Item codes
/// </summary>
[DisplayName("Item code")]
public IEnumerable<SelectListItemEx> ItemCodeList { get; set; }
/// <summary>
/// number of items
/// </summary>
[DisplayName("Required quantity")]
[Range(typeof(int), "1", "100000")]
[DataAnnotationsExtensions.Integer(ErrorMessage = "Please enter a positive whole number.")]
[Required(ErrorMessage = "Required")]
public int RequestedQuantity { get; set; }
/// <summary>
/// number of items
/// </summary>
[DisplayName("Issued")]
[Range(typeof(int), "0", "100000")]
[DataAnnotationsExtensions.Integer(ErrorMessage = "Please enter a positive whole number.")]
[Editable(true)]
public int IssuedQuantity { get; set; }
/// <summary>
/// number of items
/// </summary>
[DisplayName("Balance")]
[Range(typeof(int), "0", "100000")]
[DataAnnotationsExtensions.Integer(ErrorMessage = "Please enter a positive whole number.")]
[Editable(true)]
public int BalanceQuantity { get; set; }
/// <summary>
/// number of items returned
/// </summary>
[DisplayName("Return")]
[Range(typeof(int), "0", "100000")]
[DataAnnotationsExtensions.Integer(ErrorMessage = "Please enter a positive whole number.")]
[Editable(true)]
public int ReturnQuantity { get; set; }
public IEnumerable<SelectListItemEx> ItemList { get; set; }
public IEnumerable<SelectListItem> ItemNameList { get; set; }
}
}
$(".itemList").change(GetItemCategories);
$(".catList").chosen().change(GetItems);
$(".codeList").chosen().change(SetItem);