使用JavaScript验证

时间:2011-08-30 17:01:49

标签: javascript validation

以下代码使用document.write。如何在exceeded中显示值Label1,以及如果超出值,如何将TextBox的背景颜色更改为红色(使用JavaScripts)。

<script type="text/javascript">

    function limitlength(obj, length) {
        var maxlength = length
        if (obj.value.length > maxlength)
         document.write("Exceeded")        }

</script>

Enter text (max length is 5 characters):
<form id="form1" runat="server">
<asp:textbox ID="TextBox1" onkeypress="return limitlength(this, 5)" runat="server"></asp:textbox>
<br />
<br />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</form>

2 个答案:

答案 0 :(得分:2)

您需要在文本框中添加ID。

function limitlength(obj, length) {
    var maxlength = length
    if (obj.value.length > maxlength) {
        document.getElementById("Label1").innerHTML = "Exceeded";
        document.getElementById("TextboxID").style.backgroundColor = "red"; 
    }
}

答案 1 :(得分:1)

首先,我想了javascript:

function limitlength(obj, length) {
    var maxlength = length;
    if (obj.value.length > maxlength)
     document.write("Exceeded");
}

其次,由于您使用的是.NET,因此需要在文本框控件上使用ClientID属性。请为其分配一个ID。例如,txtBox。

第三,你可以像这样改变背景颜色:

function limitlength(obj, length) {
    var maxlength = length;
    if (obj.value.length > maxlength) {
     document.getElementById("<%=Label1.ClientID%>").innerHTML = "Exceeded"; 
     document.getElementById("<%=txtBox.ClientID %>").style.backgroundColor = "red";
    }
}