如何使用Javascript Validator验证文本框?

时间:2013-10-30 15:44:38

标签: javascript jquery asp.net vb.net

我在gridview中有文本框。我的要求是仅将文本框的输入限制为“X”或“O”。但我是javascript的新手。任何人都可以告诉我如何实现这一目标。我想提一下,我已经使用Vb.Net和Asp.Net来开发系统。 在此先感谢您的帮助。

4 个答案:

答案 0 :(得分:1)

如果您需要使用输入而不是复选框,这是一个jQuery解决方案:

$(document).ready(function() {
    jQuery('#restricted-input').on('keydown', function(event) {
        // reset input
        var input = jQuery(this).val('');

        // code 88 = x
        // code 79 = o
        // code 8  = Backspace
        if (event.keyCode == 88 || event.keyCode == 79 || event.keyCode == 8) {
            // let input happen                 
        } else {
            event.preventDefault();
        }
    });
});

答案 1 :(得分:1)

嗨,如果您喜欢这个解决方案

        function val(e) {
        tecla = (document.all) ? e.keyCode : e.which;
        if (tecla == 8) return true;
        patron = /[O-Xox]/;
        te = String.fromCharCode(tecla);
        return patron.test(te);
        }

答案 2 :(得分:0)

感谢大家对我的问题的有用建议。但这就是我刚才解决的问题。

这是我在gridview中的文本框:

 <asp:TextBox ID="txtAttend" runat="server" BackColor="Control" MaxLength="1" 
EnableViewState="true" Width="15px" onkeyup="ValidateText(this);"></asp:TextBox>

在这里,我正在调用ValidateText(this)javascript函数。

这是功能:

 <script type="text/javascript" language="javascript">
function ValidateText(i) 
{
    if(i.value != "X" || i.value != "O") 
    {
        alert("Please Enter 'X' for Present or 'O' for Absent");
    }
}
</script>

我从此链接获得了此解决方案的提示:TextBox inside GridView validation

感谢。

答案 3 :(得分:0)

请参阅以下代码,以帮助您只允许输入两个字符。此代码将限制其他键击并仅允许“X”和“O”。 有关演示,请参阅:http://jsfiddle.net/BhaveshKachhadiya/uNfP2/7/

function validate(evt)
{
    evt = (evt) ? evt : window.event;
    var charCode = (evt.which) ? evt.which : evt.keyCode;
    // alert(charCode);
    if (charCode == 120 || charCode== 88 || charCode==111 || charCode==79 || charCode == 8) {
        return true;
    }
    else
    {
        alert("Please Enter 'X' for Present or 'O' for Absent");
        return false;    
    }
}