Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 删除MVC3中特定控件的不引人注目的验证_Jquery_Asp.net Mvc 3_Unobtrusive Validation - Fatal编程技术网

Jquery 删除MVC3中特定控件的不引人注目的验证

Jquery 删除MVC3中特定控件的不引人注目的验证,jquery,asp.net-mvc-3,unobtrusive-validation,Jquery,Asp.net Mvc 3,Unobtrusive Validation,我已经实现了一个简单的MVC3应用程序,其中我使用了不引人注目的JavaScript验证。我在视图中有一个下拉列表,我不想验证它。事件我没有在ViewModel中进行任何验证 视图模型 public class TutorAddressViewModel { public TutorAddressViewModel() { AddressType = new List<SelectListItem>(); } p

我已经实现了一个简单的MVC3应用程序,其中我使用了不引人注目的JavaScript验证。我在视图中有一个下拉列表,我不想验证它。事件我没有在ViewModel中进行任何验证

视图模型

public class TutorAddressViewModel
{

    public TutorAddressViewModel()
    {           
        AddressType = new List<SelectListItem>();
    }
    public List<SelectListItem> AddressType {get;set;}

    public byte TypeID { get; set; }

}
公共类TutorAddressViewModel
{
公共TutorAddressViewModel()
{           
AddressType=新列表();
}
公共列表地址类型{get;set;}
公共字节TypeID{get;set;}
}
看法


@DropDownListFor(m=>m.TypeID,Model.AddressType,新的{@Style=“Width:150px;”})
我不想验证此地址类型下拉列表,当我在web配置中将UnobtrusiveJavaScriptEnabled此属性设置为false时,它工作正常意味着它不验证此控件,但当我将其设置为true时,它不允许我在AddressType为空时发布表单


那么,如何删除对特定控件的非侵入性Java验证?

在web配置中将
非侵入性JavaScript
设置为
false
,将全局禁用非侵入性验证

如果使用的是
数据注释
,则可以决定验证流程,例如要验证的属性。因为数据注释和不引人注目的js验证以这种方式并排工作

因此,我建议您使用数据注释结构来验证模态属性

//do not put an attribute if you do not want to validate it!
public List<SelectListItem> AddressType {get;set;}

public byte TypeID { get; set; }
//如果不想验证属性,请不要放置属性!
公共列表地址类型{get;set;}
公共字节TypeID{get;set;}

如果您不希望对某些属性进行非侵入性验证,则不要像您的案例那样在其属性上使用数据注释属性。

我没有将任何数据注释属性用于验证TypeID,但它仍然会进行验证,因为在web.Config中,非侵入性JavaScript设置为True,请交叉检查您的代码,或者更新代码以进行更详细的说明,因为如果没有为模态属性设置注释属性,则不会对其进行不引人注目的验证。您的低调验证不会妨碍您。您能否指定它给您的错误/验证结果类型??
//do not put an attribute if you do not want to validate it!
public List<SelectListItem> AddressType {get;set;}

public byte TypeID { get; set; }