ValidationMessage用于在Chrome而不是IE11上显示

时间:2019-06-17 14:30:09

标签: javascript asp.net razor model-view-controller

这是浏览器中的外观: Chrome shows validation IE11 does not 这是未显示验证

@Html.EditorFor(model => model.StrTitle, new { htmlAttributes = new { @class = "form-control", @onfocusout = "validateTitleTextBox(this);", @onfocus = "clearErrorMessage(this)" } })
@Html.ValidationMessageFor(model => model.StrTitle, "", new { @class = "invalidData" })

这是显示的验证:

@Html.EditorFor(model => model.StrUseCaseSPAFullName, new { htmlAttributes = new { @class = "form-control", @id = "autocompleteTextBox", @onfocusout = "validateSPATextBox(this); fillSPAField();", @onfocus = "clearErrorMessage(this)" } })
@Html.ValidationMessageFor(model => model.StrUseCaseSPA, "", new { @class = "invalidData" })

这是模型

[Display(Name = "Use Case SPA")]
[Required(ErrorMessage = "The Use Case SPA field is required")]
public string StrUseCaseSPA { get; set; }

[Display(Name = "Use Case SPA")]
public string StrUseCaseSPAFullName {get; set;}

[Display(Name = "Use Case Title")]
[Required(ErrorMessage = "The Use Case Title field is required")]
public string StrTitle { get; set; }

共享布局确实具有 IE11 X-UA-Compatible 标头,并且具有显示验证所需的所有捆绑软件

<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<meta http-equiv="X-UA-Compatible" content="IE=11">

EditorFor 调用的 JavaScript 函数:

//SPA - field validation
function validateSPATextBox(field) {
    if (field.value == "") {
        field.value = "Please Enter a Name for the SPA of the Use Case";
        $('#' + field.id).addClass("invalidData");
        arrFieldError.push(field.id);
    }
    else {
        var errorIndex = arrFieldError.indexOf(field.id);
        if (errorIndex != -1)
            arrFieldError.splice(errorIndex, 1);
   }
}

//Use Case Title - field validation
function validateTitleTextBox(field) {
    if (field.value == "") {
        field.value = "Please enter Title for the Use Case";
        $('#' + field.id).addClass("invalidData");
        arrFieldError.push(field.id);
    }
    else {
        var errorIndex = arrFieldError.indexOf(field.id);
        if (errorIndex != -1)
        arrFieldError.splice(errorIndex, 1);
    }
}

0 个答案:

没有答案