1

我的表单中有验证,当验证发生时,所有文本框边框颜色都变为红色,但是当字段成功验证时如何从字段中删除此错误类?

我的错误类的 CSS 是 :.error {border:2px solid #f00 !important;} 在 jquery 中我们必须正确地从文本框中删除这个红色边框?

成功:function() { } 我们必须在这里传递什么?

4

6 回答 6

0

您设置了.error类的选择器的名称是什么。

考虑它的idtxtEmail然后你可以使用如下来删除.error

$("#txtEmail").removeClass("error");
于 2013-08-07T07:19:50.107 回答
0
$("Your jQuery selector").removeClass("error");

见 jquery removeClass

于 2013-08-07T07:06:22.653 回答
0

在我看来,您正在使用 jQuery Validate插件。如果我是正确的,请继续阅读。

默认情况下,插件将在error输入有效输入时删除该类并分配一个valid类。

所以你不必设置success:function(){},除非你希望插件在成功时表现不同。

在我看来,您已经设置了 - 它删除了删除类和分配类success:function(){}的默认行为- 但您没有为成功分配新功能。结果,成功时什么也没有发生。errorvalid

因此,如果您对成功的默认行为感到满意,那么只需success:function(){}从您的验证设置中删除即可。

我希望这有帮助。

于 2013-08-07T14:22:58.763 回答
0
success: function() { 
 $('Your-jquery-selector')removeClass("error");
} 
于 2013-08-07T19:46:29.927 回答
0

试试下面的代码

<input type="button" id="btn1" value="1" />
<input type="button" id="btn2" value="Add Class"/>
<input type="button" id="btn3" value="Remove Class"/>


$(document).ready(function() {
    $("#btn2").click(function(){
        $("#btn1").addClass("one");
    });

    $("#btn3").click(function(){
        $("#btn1").removeClass("one");
    });
});

演示:http: //jsfiddle.net/zWAEf/

于 2013-08-07T07:21:02.640 回答
0

你的表单结构如何?假设它是这样的

<div id="testdiv>    // or any thing having id
    //your textboxes
 </div>

那么您可以按如下方式使用jquery。

<script>
//create one function which add and removes error class
function CheckValidation()
{
    var alltxt = $("#testdiv input[type='text']");
    for(var i=0;i<alltxt.length;i++)
    {
       if(validation condition fail)
       {
          alltxt[i].className = "error";
       }
       else
       {
          alltxt[i].className = "";
       }
    }
}
</script>

希望能帮助到你。

于 2013-08-07T08:49:34.963 回答