Удалить ненавязчивую проверку для конкретного элемента управления в MVC3

Я реализовал одно простое приложение MVC3, в котором использовал проверку UnobtrusiveJavaScript. У меня есть одно раскрывающееся меню, которое я не хочу проверять. событие, я не проверял ViewModel.

ViewModel

public class TutorAddressViewModel
{

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

    public byte TypeID { get; set; }

}

Вид

<table style="background: none; " class="addressDetail">
    <tr>
        <td>
            @Html.DropDownListFor(m => m.TypeID,Model.AddressType  , new { @Style = "Width:150px;" })
        </td>
</tr>
</table>

этот раскрывающийся список типов адресов, который я не хочу проверять, когда я установил UnobtrusiveJavaScriptEnabled для этого свойства false в веб-конфигурации, он работает нормально, означает, что он не проверяет этот элемент управления, но когда я установил для него значение true, он не позволяет мне для POST формы, когда AddressType пуст.

Итак, как я могу удалить проверку UnobtrusiveJava для определенного элемента управления?


person Shivkumar    schedule 18.04.2013    source источник


Ответы (1)


Установка UnobtrusiveJavaScript на false в вашей веб-конфигурации отключит ваши ненавязчивые проверки глобально.

Если вы используете data annotations, вы можете выбрать свой поток проверки, например, какое свойство вы хотите проверить. Потому что таким образом аннотации данных и ненавязчивая проверка 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; }

если вы не хотите, чтобы ненавязчивая проверка выполнялась для определенного свойства, не используйте атрибут аннотации данных по его свойству, как в вашем случае.

person Rohit416    schedule 19.04.2013
comment
я не поместил какой-либо атрибут аннотации данных для проверки TypeID, но он все равно проверяется, потому что для UnobtrusiveJavaScript установлено значение True в web.config - person Shivkumar; 19.04.2013
comment
перепроверьте свой код или обновите свой код, чтобы уточнить его, потому что ненавязчивая проверка не будет срабатывать для модального свойства, если вы не установили для него атрибут аннотации. ваши ненавязчивые проверки не будут мешать вам. - person Rohit416; 19.04.2013
comment
и не могли бы вы указать, какой тип ошибки/результата проверки он вам дал?? - person Rohit416; 19.04.2013