从已填写的字段中删除附加内容

时间:2013-01-10 19:53:44

标签: jquery field

这是我写的代码:

$('#third_step input[type=text]').each(function(n,element){  
            if ($(element).val()=='') {  
              //alert('Field '+element.id+' must have a value');  
              $("label[for='" +element.id+ "']").append('<p class="input_field_error">Bitte füllen Sie dieses Feld!</p>');
        error++;  
            }else{
        $('.input_field_error').remove();
        }
 }); 

然后,当我测试它时,我点击提交并且未填写的字段显示错误消息,但是当我填写其中一些时,然后从它们中删除错误信息加上它从字段中删除消息在他们之前,他们之后的字段仍然有错误信息!也许我需要从那些填充了字段的标签中选择input_field_error!或者,如果字段填满,这不是测试字段的好方法吗?

2 个答案:

答案 0 :(得分:3)

$('.input_field_error').remove();

这将删除所有input_field_error类的元素,这不是您想要的。您只想删除当前正在验证的元素。所以改成它:

$('.input_field_error', 'label[for="' + element.id + '"]').remove();

这只会选择input_field_error<label>内的当前ID。

答案 1 :(得分:0)

您需要调整else语句,以便它不会删除所有类元素。 $('。input_field_error')引用所有项目。