使用JQuery更改验证时的文本框颜色失败

时间:2011-10-26 19:21:39

标签: jquery asp.net regex

当正则表达式验证程序失败时,我正在尝试使用jQuery来改变文本框颜色。

这是我在网上找到的一个功能,但我不知道如何更改它以使用正则表达式。

<script type="text/javascript">
    function ValidateTextBox(source, args)
    {
        var is_valid = $("#TextBox1").val() != "";
        $("#TextBox1").css("background-color", is_valid ? "white" : "red");
        args.IsValid = is_valid;
    }
</script>

另外,我不明白使用什么

args.IsValid = is_valid;

在函数中。


以下是我现在正在尝试的内容:

<script type="text/javascript">
function ValidateTextBox(source, args) {
    var is_valid = false;

    //Regex goes here
    var regex = [A-Za-z];
    if (regex.test($('#TextBox1').val())) {
        //If input was correct
        is_valid = true;
    }
    else {
        //If input is not correct
        $("#TextBox1").css("background-color" : "red");           
    }
    args.IsValid = is_valid; //Returns validity state
}


</script>

2 个答案:

答案 0 :(得分:0)

function ValidateTextBox(source, args)
{
    //var is_valid = $("#TextBox1").val() != ""; //returns true or false

    //add regex test, lots of way and set result to is_valid
    var is_valid = false;
    var rege = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/; //example
    if(rege.test($('#TextBox1').val())){ 
        is_valid = true;
    }

    $("#TextBox1").css("background-color", is_valid ? "white" : "red");
    args.IsValid = is_valid; //tells validatin engine if this item is valid or not
}

答案 1 :(得分:0)

JavaScript正则表达式需要像//这样包围。

//Regex goes here
var regex = /[A-Za-z]/;