Jquery验证文本框的OnBlur

时间:2012-01-27 11:57:25

标签: jquery

Javascript:

<script type="text/javascript">

    function checkdata() {

        $("#TextBoxesGroup :input").each(function () {
            if (!$(this).val()) {
                alert(this.val()+":Dis");
                $("#addButton").attr("disabled", "disabled");
            }
            else {
                alert(this.val() + ":Ena");
                $("#addButton").removeAttr("disabled");
            }
        });
    }

    $(document).ready(function () {
        $("#addButton").attr("disabled", "disabled");
        $("#TextBoxesGroup :input").each(function () {
            $(this).blur(function () {
                checkdata();
            });
        });
    });
</script>

HTML

<div id='TextBoxesGroup'>
    <div style="float: left; width: 625px;">
        <div>
        <input type="text" name="answer" class="ahsan" />
        </div>
    </div>
</div>
<div style="clear: both;">
</div>
<div>
    <input type="button" value="Add New Row" class="qa-adbtn" id='addButton' />
</div>

现在我要做的是,如果用户在文本框中输入内容(ahsan)。然后启用添加按钮,如果文本框中没有任何内容,那么添加按钮会自动禁用

4 个答案:

答案 0 :(得分:5)

这个作品                     

    function checkdata() {
var ok = true;
        $("#TextBoxesGroup :input").each(function () {

            if (!$(this).val()) {             
               ok = false;
               return;
            }

        });
if (ok) $("#addButton").removeAttr("disabled");
else   $("#addButton").attr("disabled", "disabled");

    }

    $(document).ready(function () {
        $("#addButton").attr("disabled", "disabled");

            $("#TextBoxesGroup :input").blur(function () {
                checkdata();
            });

    });
</script>
</head>
<body>
<div id='TextBoxesGroup'>
    <div style="float: left; width: 625px;">
        <div>
        <input type="text" name="answer" class="ahsan" />
 <input type="text" name="answer" class="ahsan" />
        </div>
    </div>
</div>
<div style="clear: both;">
</div>
<div>
    <input type="button" value="Add New Row" class="qa-adbtn" id='addButton' />
</div>
</body>
</html>

答案 1 :(得分:0)

你去吧

function checkdata() {
    $("#TextBoxesGroup :input").each(function() {
        if($(this).val().trim().length < 1) {
            alert($(this).val() + ":Dis");
            $("#addButton").attr("disabled", true);
        }
        else {
            alert($(this).val() + ":Ena");
            $("#addButton").attr("disabled", false);
        }
    });
}

$(function () {
    $("#addButton").attr("disabled", true);
        $("#TextBoxesGroup input").blur(function () {
        checkdata();
    });
});

答案 2 :(得分:0)

每个循环都不是必需的,因为模糊函数绑定到每个文本框。

试试这个

    $("#addButton").attr("disabled", true);
    $("#TextBoxesGroup input").blur(function () {
    if($(this).val()== ""  ) {
        $("#addButton").attr("disabled", true);
    }
    else {
        $("#addButton").attr("disabled", false);
    }

答案 3 :(得分:0)

检查以下小提琴:

http://jsfiddle.net/TChNC/

使用按键事件,如果txtbox的长度更大,则启用按钮

编辑:

在小提琴中,我通过默认将按钮保持为禁用状态,您可以根据需要进行适当的更改。

相关问题