【发布时间】:2011-11-02 16:44:01
【问题描述】:
我正在使用以下代码突出显示用户单击的文本框的 div。我的问题是我有多个 div 和文本框,单击时需要突出显示,但是如果单击一个文本框,所有 div 都会突出显示。何时应一次突出显示一个(单击时)。
.aspx 代码
<div class="divSurname" runat="server">
<div id ="divLastName" class="on">
<asp:TextBox class="resizedTextbox" ID="txtSurname" onfocus="ChangeStyle(this);" onblur="ToggleStyle(this);" runat="server"></asp:TextBox>
<asp:CustomValidator ID="cvSurname" runat="server" ValidateEmptyText="true" ControlToValidate="txtSurname" ErrorMessage="Please enter your Surname name." Display="Dynamic" OnServerValidate="cvSurname_ServerValidate" />
</div>
</div>
Firstname postcode 等的类似代码。
javascript
<script type="text/javascript">
function ToggleStyle(ctrl) {
(document.getElementById('divLastName')).className = "on";
(document.getElementById('divStartName')).className = "on";
(document.getElementById('divDateOfBirth')).className = "on";
(document.getElementById('divClientPostcode')).className = "on";
}
function ChangeStyle(ctrl) {
(document.getElementById('divLastName')).className = "off";
(document.getElementById('divStartName')).className = "off";
(document.getElementById('divDateOfBirth')).className = "off";
(document.getElementById('divClientPostcode')).className = "off";
}
</script>
CSS
#divLastName.on
{
background-color: #fff5cc;
}
#divLastName.on:hover
{
background-color: #fcd619;
}
#divLastName.off
{
background-color: #fcd619;
}
#divStartName.on
{
background-color: #fff5cc;
}
#divStartName.on:hover
{
background-color: #fcd619;
}
#divStartName.off
{
background-color: #fcd619;
}
#divDateOfBirth.on
{
background-color: #fff5cc;
}
#divDateOfBirth.on:hover
{
background-color: #fcd619;
}
#divDateOfBirth.off
{
background-color: #fcd619;
}
#divClientPostcode.on
{
background-color: #fff5cc;
}
#divClientPostcode.on:hover
{
background-color: #fcd619;
}
#divClientPostcode.off
{
background-color: #fcd619;
}
提前感谢您的帮助!
【问题讨论】:
标签: javascript asp.net css