0

クライアントが各フィールドでよりカスタマイズされたhtml検証エラーを望んでいる場合があります。これはかなり簡単だと思ったので、これが私の最初のアプローチでした

    public static MvcHtmlString MyValidationMessage(this HtmlHelper helper, string modelName, object htmlAttributes)
    {
        if (!helper.ViewData.ModelState.ContainsKey(modelName))
        {
            return new MvcHtmlString("");
        }

        TagBuilder builder = new TagBuilder("div");
        builder.AddCssClass("my-validation-message");
        builder.MergeAttributes(HtmlHelper.AnonymousObjectToHtmlAttributes(htmlAttributes));
        builder.InnerHtml += "<b>Custom</b>";
        builder.InnerHtml += helper.ValidationMessage(modelName);

        return new MvcHtmlString(builder.ToString());
    }

これは、JQuery検証と統合されていないため、実際には機能しませんでした。クライアント側のjquery検証フレームワークでさらに作業することを検討することにしたので、これを試しました...

$.validator.setDefaults({
    errorPlacement: function(error, element) {
        debugger;
    }
});

そして、デバッガーをヒットさせることさえできませんでした。

私はMVC4を使用しています

注:これは別の質問の重複である可能性があることは知っていますが、答えは不十分でした。

4

1 に答える 1

0

私が考えることができる他の唯一の解決策は、実際に.NET Frameworkからソースコードをコピーして、それを自分のニーズに合わせることです。他の方法は実際にはわかりません。

于 2013-02-22T20:19:50.240 に答える