以下代码使用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>
答案 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";
}
}