jQuery验证成功消息未设置样式

时间:2012-07-02 18:14:44

标签: jquery css jquery-validate message

我将消息设为红色以表示错误,绿色表示成功。但是这些消息似乎是成功的红色。

以下是验证码:

debug: true,
errorElement: "em",             
success: function(label) {
    label.text("ok!").addClass("success");
},

这是CSS代码段:

em.success
{
    float: none; 
    color: green; 
    padding-left: .5em; 
    font-style: italic;
    font-size: 11px;    
}

em.error 
{ 
    float: none; 
    color: red; 
    padding-left: .5em; 
    font-style: italic;
    font-size: 11px;
}

我的代码到底出了什么问题?

请参阅this fiddle

2 个答案:

答案 0 :(得分:1)

要解决重复的确定,请执行以下操作:

success: function(label)
{
    label.text("").text("ok!").addClass("success");
}

答案 1 :(得分:1)

我认为您的标签最终会同时包含successerror类,因此在the rules to determine a CSS property value之后,后者获胜并且您的文字为红色(假设CSS规则的顺序是和你的问题一样)。

至于为什么他们两者都有:documentation表示如果指定success,则会显示“错误标签以显示有效元素”。我不完全确定这意味着什么。您可能想深入研究(调试标签,检查Firebug中的元素或开发工具,查看source of the plugin)。

在jsfiddle.net上的演示中,唯一的问题似乎是多个成功标签。我发现another answer表示如果删除“错误”类,则不会清除标签。 I removed the removeClass from your example它看起来像你想要的那样工作(只有一个标签,颜色好)。