0

我有两个 javascript 函数来更改进入和离开事件的背景颜色。

    function ColoronEnter()
      { 
        var txt1 = document.getElementById("<%=txtID1.ClientID%>");
       txt1.style.backgroundColor = "red";
      }

      function ColoronLeave()
      { 
        var txt2 = document.getElementById("<%=txtID1.ClientID%>");
       txt2.style.backgroundColor = "";
      }

我称他们为

<asp:TextBox ID="txtID1" runat="server" MaxLength="20" AutoCompleteType="FirstName"  onfocus="ColoronEnter()" onblur="ColoronLeave()" ></asp:TextBox>

它运作良好。但我想将一个 javascript 函数应用于我的所有文本框。我尝试过类似的东西

        function onEnter(_input)
       {
        var input = _input;
        document.getElementById(input).style.backgroundColor ="yellow"; 
       }  
       function onLeave(_input)
       {
        var input = _input;
        document.getElementById(input).style.backgroundColor =""; 
       }  

试图称他们为

 <asp:TextBox ID="txtID2" runat="server" onfocus="onEnter(txtID2)" onblur="onLeave(txtID2)"></asp:TextBox>
 <asp:TextBox ID="txtID3" runat="server" onfocus="onEnter(txtID3)" onblur="onLeave(txtID3)"></asp:TextBox>

它抛出一个错误

Microsoft JScript runtime error: Unable to get value of the property 'style': object is null or undefined.

我怎样才能为我的所有文本框调用一个函数。预先感谢。

4

1 回答 1

4

使用喜欢

  <asp:TextBox ID="txtID2" runat="server" onfocus="onEnter(this)" onblur="onLeave(this)"></asp:TextBox>
  <asp:TextBox ID="txtID3" runat="server" onfocus="onEnter(this)" onblur="onLeave(this)"></asp:TextBox>


    function onEnter(_input)
   {
     _input.style.backgroundColor ="yellow"; 
   }  
   function onLeave(_input)
   {
     _input.style.backgroundColor =""; 
   } 

如果您对使用 jQuery 没有任何限制,请使用jQuery 悬停事件来处理。

于 2013-03-27T06:35:36.993 回答