如何检查div是否包含错误消息?如果是,请向其添加新的错误消息或使用jQuery添加新的错误消息?

时间:2014-12-12 04:10:59

标签: javascript jquery html validation

我正在使用jQuery验证表单。我想在一个div中显示错误消息。使用我编写的代码,我能够添加一条错误消息,但我不理解如何向表单上已存在的错误消息添加更多错误消息。这个是我添加的。

但是它还需要检查div中是否存在错误消息,然后我们不应该附加其他错误消息,我们应该添加第一个错误消息然后再打开以附加其他错误消息(如果有的话)。 / p>

如何实现这一目标?请帮帮我。

以下是我能够添加一条错误消息但是检查div是否包含错误消息的问题的代码,如果是,则附加新的错误消息或添加第一条错误消息,然后追加其他错误消息它。

$(document).ready(function() {
    $('#receipt_image').bind('change', function() {
        var fileInput = $("#receipt_image")[0];  
        var ImgSizeInBytes = fileInput.files[0].size;
        if(ImgSizeInBytes > 10485760) {
            var htmlStr = "<div class='alert alert-danger alert-dismissible' role='alert'><button type='button' class='close' data-dismiss='alert' aria-hidden='true'>&times;</button>The file you are trying to upload exceeds 10MB upload limit.</div>";    
            $(htmlStr).insertBefore('div.modal-body #rebate_request_form');        
        } else if(ImgSizeInBytes <= 10485760) {
            if ($('.alert-danger').length) {
                $('.alert-danger').remove();
            }  
        }
    });
});

1 个答案:

答案 0 :(得分:0)

这个怎么样

$(document).ready(function() {
    $('#receipt_image').bind('change', function() {
        var fileInput = $("#receipt_image")[0];  
        var ImgSizeInBytes = fileInput.files[0].size;
        if ($('.alert-danger').length) {
            $('.alert-danger').remove();
        if(ImgSizeInBytes > 10485760) {
            var htmlStr = "<div class='alert alert-danger alert-dismissible' role='alert'><button type='button' class='close' data-dismiss='alert' aria-hidden='true'>&times;</button>The file you are trying to upload exceeds 10MB upload limit.</div>";    
            $(htmlStr).insertBefore('div.modal-body #rebate_request_form');        
        } 
    });
});

<强>更新

$(document).ready(function() {
    $('#receipt_image').bind('change', function() {
        var htmlStrobj = $("<div class='alert alert-danger alert-dismissible' id='errordiv' role='alert'><button type='button' class='close' data-dismiss='alert' aria-hidden='true'>&times;</button></div>");
        var fileInput = $("#receipt_image")[0];  
        var ImgSizeInBytes = fileInput.files[0].size;
        if ($('#errordiv').length) {
            $('#errordiv').remove();
        if(ImgSizeInBytes > 10485760) {
            var htmlStr = "The file you are trying to upload exceeds 10MB upload limit.</br >";    
            htmlStrobj.append(htmlStr);        
        } 
        // You can add more validation rules here
        htmlStrobj.insertBefore('div.modal-body #rebate_request_form');        
    });
});