2013-12-10 2 views
0

Я использую проверку данных asp.net mvc с помощью jquery. Ненавязчиво для проверки данных.Проверка данных MVC ASP.NET

public class Register 
{ 
    [Required] 
    public string Name { get; set; } 

    [Required(ErrorMessage = "must not be empty")] 
    public string Surname { get; set; } 

    [EmailAddress(ErrorMessage = "please enter a valid email address")] 
    [Required] 
    public string Email { get; set; } 
} 

Перед отправкой формы jquery проверяет правильность и перечисляет ошибки в области сводки валидации.

Моя проблема;

Я не хочу отображать ошибки по требуемым атрибутам, я просто хочу нарисовать текстовое поле или что-то еще красное - это поведение по умолчанию с сообщениями об ошибках.

Чтобы скрыть список ошибок я использовал

.validation-summary-errors ul{ 
    display: none; 
} 

это CSS, но она скрывает все ошибки валидации, а не только необходимые из них. Как я могу добиться отображения всех ошибок, кроме обязательных?

Примечание:

[Required(ErrorMessage = null)] 

или

[Required(ErrorMessage = "")] 

не работает

+0

если у вас есть '@ Html.ValidationSummary()' на вашей странице, удалите его и попробуйте. –

+0

полностью удаляет ошибки проверки. Я хочу удалить только необходимые ошибки атрибута. – bahadir

+0

Перед вызовом return() 'call вручную удаляет ошибки из' ModelState'. –

ответ

1

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

Эта ссылка имеет пример для создания пользовательских атрибутов валидация http://jqueryvalidationunobtrusivenative.azurewebsites.net/AdvancedDemo/CustomValidation

надеюсь, что это помогает.

+0

спасибо, теперь я могу добавить пустые сообщения об ошибках в мою модель с настраиваемыми атрибутами, но я все еще не могу предотвратить jquery, чтобы добавить пустые элементы li в список ошибок. любая идея об этом? или мне нужно изменить jquery ненавязчивый источник? – bahadir

+0

Я решил проблему с li: empty {display: none;} – bahadir

0

это может работать

[Требуется (ErrorMessage = "«)]

(я добавил пробел). Валидация будет работать, но сообщение будет пустым (пробел)

+0

Ненавязчивая проверка отображает ошибки в неупорядоченном списке, так что он оставит его с пустыми линиями в случайных интервалах – BoredBlazer

Смежные вопросы