0

我已经为一个属性创建了一个数据注释Note,它正在实现IClientValidatable以获取生成的数据属性供客户端验证使用。

[StringLength(50, ErrorMessage = "Max 50 characters")]

[TextNumberCommaDotSpaceValidation(ErrorMessage = "Letters, numbers, ',', '.', only.")]

[DataType(DataType.MultilineText)]

public object Note { get; set; }

以下 jquery 用于不显眼的验证:

jQuery.validator.unobtrusive.adapters.addBool("textnumbercommadotspace");

jQuery.validator.addMethod("textnumbercommadotspace",
    function (val, element, other) {            

        var textnumbercommadotspacevalidationattributePattern = /^[a-öA-Ö0-9  .,]*$/

        return textnumbercommadotspacevalidationattributePattern.test($.trim(val));

    }
);

当我不使用[DataType(DataType.MultilineText)]注释时,验证工作正常。那是对输入文本应用验证的时候。

有谁知道如何使客户端验证与 MultilineText 一起工作?

验证被触发,但与 MultilineText 一起使用时,它不会在界面中出现任何错误。

4

2 回答 2

0

MultilineText 的验证现在似乎有效,但仅在调用 .valid() 方法时提交。

但是 onchange 没有错误,就像我在使用文本框时得到的那样,而且 MultilineText 周围也没有红色标记。

这个红色标记和验证 onchange 是否仅适用于文本框而不适用于 MultilineText?

于 2013-09-03T14:33:09.930 回答
0

您需要将其添加到您的 css 文件中

textarea.input-validation-error {
    border: 1px solid #e80c4d;
}
于 2013-11-28T16:31:12.497 回答