Необходимо очистить сообщение об ошибке проверки на стороне клиента для TextBoxFor @ type = "file" (File Upload), когда пользователь загружает действительный файл - PullRequest
0 голосов
/ 09 апреля 2020

Правильно полученное подтверждение показывает сообщение об ошибке, если пользователь нажимает кнопку «Отправить» в самом низу страницы, не загрузив действительный файл. Проблема заключается в том, что когда пользователь успешно загружает действительный файл, мне нужно немедленно удалить это сообщение об ошибке, как это происходит для TextBoxFor.

У меня есть:

    [RegularExpression(@"([a-zA-Z0-9\s_\\.\-:])+(.pdf|.jpg|.png|.rtf|.doc|.docx)$", ErrorMessage = "Files must be pdf, jpg, png, rtf, doc, or docx.")]
    [DataType(DataType.Upload)]
    [Display(Name = "Survey (Required)")]
    [Required(ErrorMessage = "Please select file.")]
    public HttpPostedFileBase Survey { get; set; }

и

@Html.LabelFor(m => Model.Survey, new { @class = "control-label" })
@Html.TextBoxFor(m => Model.Survey, new { @class = "form-control", @type = "file", Name = "Survey" })
@Html.ValidationMessageFor(m => Model.Survey, "", new { @class = "text-danger" })

1 Ответ

0 голосов
/ 13 апреля 2020

В итоге я сделал это, чтобы очистить ошибку проверки:

//04/10/20 kk Had to do the below to clear the val immediately on selection
$("#Survey").change(function () {
    $("#Survey").blur(); 
});
...