2017-09-29 2 views
-1

Wenn jemand vergessen würde, das Datum und dann klicken Sie auf "Senden" eingeben wir erhalten "Datum des Besuchs ist erforderlich" wie erwartet, aber dann, nachdem das Datum ausgefüllt ist die "erforderlichen" Nachricht doesn ' t verschwindet wie bei jedem anderen Feld. Ich kann immer noch auf submit klicken, und es funktioniert gut, aber der Projekteigentümer glaubt, dass dies die Leute verwirren könnte und sie so verschwinden lassen soll, wie es sein soll, wenn das Feld richtig ausgefüllt ist. Ich habe 1.16 von jQuery.Validation in meinen NuGet-Paketen, es gibt keine Updates.Datum Fehlermeldung nicht nach validiert

Aus meiner Sicht habe ich dies:

<div class="form-group"> 
    @Html.LabelFor(m => m.DateOfVisit, new { @class = "form-label" }) 
    @Html.TextBoxFor(m => m.DateOfVisit, new { @class = "form-control", type = "Date", placeholder = "MM/DD/YYYY", @Value = "" }) 
    @Html.ValidationMessageFor(m => m.DateOfVisit, string.Empty, new { @class = "text-danger" }) 
</div> 

In meinem Modell habe ich diese

[Required(ErrorMessage = "Date of Visit is required")] 
[DataType(DataType.Date)] 
[Display(Name = "Date of Visit")] 
public DateTime DateOfVisit { get; set; } 

Edit: Dies geschieht, ich alle Browser übernehmen. Ich habe das Problem in Chrome und IE 11 dupliziert. Außerdem verhält sich nur das eine Feld so; der "erforderliche" Text verschwindet auf allen anderen Feldern. Ich weiß nicht, warum dieser hier anders ist.

Antwort

0

Ich bin mir nicht sicher, ob es eine Antwort ist aber eher eine Arbeit um nur so kann ich auf

bewege ein CSS versteckt Nachdem die im Grunde bedeutet ‚display: none‘ verstecken ich den Warntext auf verwischen.

$('#DateOfVisit').blur(function() { 
    if ($(this).val()) { 
     $('#DateOfVisit-error').addClass('hidden'); 
    } 
    else { 
     $('#DateOfVisit-error').removeClass('hidden'); 
    } 
}); 

Hoffe, es hilft jemand anderem, bis sie es offiziell beheben. Ich habe wieder Version 1.7.