在asp.net上单击按钮的空文本框的Javascript验证

时间:2013-10-08 10:41:32

标签: javascript asp.net runtime-error

我有一个面板的asp.net应用程序。 在该面板内,我有一个图像按钮和textbox。 我为textbox写了一个javascript验证函数,它会显示警告框,用于在textbox中输入一些值。 现在这个函数不起作用给出了运行时错误:

  

需要对象

我的代码在这里:

<asp:Panel ID="pnlTop" runat="server">
   <tr height="35px" valign="top">
      <td align="right" valign="middle" colspan="2" height="50">
         <asp:ImageButton ID="imgbtnGOTO" runat="server" ToolTip="View Specific Record" BorderWidth="0"
                                ImageAlign="AbsMiddle" OnClientClick="javascript:return fnCheck()"></asp:ImageButton>&nbsp;&nbsp;
         <asp:TextBox ID="txtPagingGoto" CssClass="clsTableCellLeft" Width="215px" runat="server" CausesValidation="true"></asp:TextBox>
      </td>
   </tr>
</asp:Panel>

我的Javascript功能是:

function fnCheck() {
    if ((document.getElementById("txtPagingGoto").value).length == 0) {
        alert("The textbox should not be empty");
    }
}

请为此提出解决方案。

3 个答案:

答案 0 :(得分:3)

试试这个:

  function fnCheck() {
         if ((document.getElementById("<%=txtPagingGoto.ClientID%>").value).length == 0) {
             alert("The textbox should not be empty");
    }
}

document.getElementById获取运行时生成的 ID,该ID与服务器端ID不同(并非总是如此)。

一种方法是像我一样使用黄色代码。

另外:请考虑使用TRIM方法。 (如果你需要处理它)。

答案 1 :(得分:2)

function fncheck()
{
        var pgng = document.getElementById("<%=txtPagingGoto.ClientID%>").value.trim();
        if(pgnd == "")
        {
            alert('The textbox should not be empty...');
            document.getElementById("<%=txtfname.ClientID%>").focus();
            return false;
        }
}

答案 2 :(得分:0)

<html>
  <head>
    <script type="text/javascript">
     function validate()
        {
         if(document.getElementById("aa").value=="")
               {
                 alert("this textbox should not be empty");
               }
        }
    </script>
   </head>
  <body>
 <input type="txt" id="aa"/>

  <input type="button" value="submit" onclick="validate()"/>`

  </body>
</html>