如何验证 mvc 4.5 中的选择下拉列表?

Posted

技术标签:

【中文标题】如何验证 mvc 4.5 中的选择下拉列表?【英文标题】:how to validate selectize dropdownlist in mvc 4.5? 【发布时间】:2017-11-12 06:50:40 【问题描述】:

我正在与mvcframework-4.5 合作。在所有其他领域验证工作正常,但我发现很难选择下拉列表。验证也在简单的下拉列表中正常工作。 我尝试使用 field-validation-error 和 input-validation-error 显示消息,但没有成功。以下是我在jquery.validate.unobtrusive.js 中所做的一些更改。

function onError(error, inputElement)   // 'this' is the form element

    var container = $(this).find("[data-valmsg-for='" + escapeAttributeValue(inputElement[0].name) + "']"),
    replaceAttrValue = container.attr("data-valmsg-replace"),
    replace = replaceAttrValue ? $.parseJSON(replaceAttrValue) !== false : null;
    container.removeClass("field-validation-valid").addClass("field-validation-error");
    error.data("unobtrusiveContainer", container);
    if (replace) 
        container.empty();
        error.removeClass("input-validation-error-+-").appendTo(container);
    
    else 
        error.hide();
    
    //For Validation Toggel Start 
    debugger;

    if ($(inputElement).parent().hasClass("selectize-input")) 
        $(inputElement).parent().parent().parent().addClass("md-input-danger");
        var container = error.data("unobtrusiveContainer");
        container.removeClass("field-validation-valid").addClass("field-validation-error");
           

我为此做了很多研究,但没有得到任何合适的解决方案。

请帮我解决这个问题。 谢谢

【问题讨论】:

【参考方案1】:

在文档中添加下面的 JQuery 代码以验证您的选择下拉列表

$.validator.setDefaults(
    ignore: ':hidden:not([class~=selectized]),:hidden > .selectized, .selectize-control .selectize-input input'
);

【讨论】:

以上是关于如何验证 mvc 4.5 中的选择下拉列表?的主要内容,如果未能解决你的问题,请参考以下文章

如何在下拉列表中显示名称而不是 ID 以供用户选择 MVC

asp.net mvc jquery 下拉验证

如何验证下拉列表中的“其他”选项?

如何在 C# 中为枚举值添加描述以与 ASP.NET MVC 中的下拉列表一起使用? [复制]

如何在 Kendo UI MVC 的网格中设置和获取下拉列表的值?

如何从我的数据库中的列生成下拉菜单的选择列表?