1

在asp dot net中,我将一个按钮的可见性设为假,当用户在文本框中输入任何文本时,该按钮的可见性为真。我试图做到这一点,但我在找不到对象的 java 脚本中遇到错误。以下是我的代码。

 <asp:TextBox ID ="txt" runat ="server" onkeyup="SetButtonStatus(event,'Button1')" ></asp:TextBox> 


<asp:Button ID="Button1" runat="server" style ="display :none;"     Text="Button" />

脚本:

  function SetButtonStatus(evt,btn)
  {
    var vs =document.getElementById("<%= txt.ClientID %>").value;
   if(vs.length >= 1 )
    {   
      if( document.getElementById(btn) == null )  
      {            
           document.getElementById(btn).style.display = "block" ;             

      }                 
    }
    else if(vs.length ==0) 
    {
      document.getElementById(btn).style.display="none";
    }
  }

我得到的错误是:Microsoft JScript 运行时错误:需要对象

4

1 回答 1

0

删除Visible ="false"然后尝试。

仅使用style="display:none"

编辑-1

更新您的代码这项工作正常: -

<script>
        function SetButtonStatus(evt) {
            var vs = document.getElementById("<%= txt.ClientID %>").value;
            if (vs.length >= 1) {
                if (document.getElementById("<%= Button1.ClientID %>") == null) {
                   //document.getElementById(btn).style.display = "block";
                }
                else {
                    document.getElementById("<%= Button1.ClientID %>").style.display = "block";
                }
            }
            else if (vs.length == 0) {
                document.getElementById("<%= Button1.ClientID %>").style.display = "none";
            }
        }
    </script>


 <asp:TextBox ID ="txt" runat ="server" onkeyup="SetButtonStatus(event)" ></asp:TextBox> 
    <asp:Button ID="Button1" runat="server" style="display:none;" Text="Button" />
于 2013-02-15T11:35:28.050 回答