javascript - Jquery onload 每个循环很简单

标签 javascript jquery

我有一个简单的 keyup 函数,用于类“keyup-an”,用于表单上的 keyup 验证。这个类大约有 10 个字段。但是发布后,我将字段添加到表单中。但绿色和红色的背景消失了,因为它不是键盘。我该如何做这样的事情,根据页面加载的结果为背景着色

jQuery(document).ready(function() {

$('.keyup-an').each(function(index) {

    var inputVal = $(this).val();
    var numericReg = /^[a-zA-Z0-9_ ]{2,30}$/;
    if(!numericReg.test(inputVal)) {
        $(this).css('background', '#FAC3C3');
        $(this).after('<span class="error error-keyup-1">Please use letters or numbers only</span>');
    } 
    else {
        $(this).css('background', 'lightgreen');
    }
});


$('.keyup-an').keyup(function() {
    $('span.error-keyup-1').hide();
    var inputVal = $(this).val();
    var numericReg = /^[a-zA-Z0-9_ ]{2,30}$/;
    if(!numericReg.test(inputVal)) {
        $(this).css('background', '#FAC3C3');
        $(this).after('<span class="error error-keyup-1">Please use letters or numbers only</span>');
    } 
    else {
        $(this).css('background', 'lightgreen');
    }
});

最佳答案

我想这就是你想要的..

$(document).ready(function() {
    // Each
    $('.keyup-an').each(function() {
        // Validate
        validate(this);
        // Key up
        $(this).keyup(function(){
            // Validate
            validate(this);
        });
    });
});


// Validate Function
function validate(element) {
    var obj = $(element);
    if(!/^[a-zA-Z0-9_ ]{2,30}$/.test(obj.val())) {
        // Invalid
        obj.css('background', '#FAC3C3');
        if(!obj.next().hasClass('error'))
        { obj.after('<span class="error error-keyup-1">Please use letters or numbers only</span>'); }
    } else {
        // Valid
        obj.css('background', 'lightgreen');
        if(obj.next().hasClass('error'))
        { obj.next().remove(); }
    }
}

演示:http://jsfiddle.net/BerkerYuceer/q2ajM/

关于javascript - Jquery onload 每个循环很简单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13043212/

相关文章:

javascript - 如何递归添加未知的原始元素?

javascript - Codeigniter Biostall Google Map API 选项卡问题

javascript - 在 jquery 中显示从中间向外扩展的 div

javascript - 迭代表列并获得最快的时间

javascript - ASP.NET MVC jQuery JSON 结果重定向 URL

javascript - Angularjs - 表格单元格上的上下文菜单

javascript - 使用 jQuery 编写 .add*() 插件函数

javascript - 为什么 <svg> 没有在浏览器中显示输出?

javascript - 滚动时触发圆环图动画

javascript - 如何让我的 div 元素移动超过 200px?