Проблема сброса формы на стороне клиента с ASP.NET - PullRequest
0 голосов
/ 12 августа 2011

Я пытаюсь сбросить форму, используя JavaScript на стороне клиента. Код выглядит так:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
    <script type="text/javascript" >
        function Reset() {
            TextBox1.text = "";
        }
    </script>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="Reset()" />
    </div>
    </form>
</body>
</html>

Это, конечно, не работает, я получаю сообщение об ошибке, что Button1 не определена. Я попытался найти имя элемента управления в браузере (путем просмотра источника страницы) и использовать его вместо его идентификатора, но это тоже не сработало.

Ответы [ 2 ]

1 голос
/ 12 августа 2011

Я советую вам использовать jQuery для вашего кода JavaScript. В любом случае это стандарт.

После ссылки на jQuery вы можете переписать свой JavaScript следующим образом:

<script type="text/javascript" >
    function resetForm() {
        $("#<%=TextBox1.ClientID %>").val("");
    }
</script>    

Если вы все еще не хотите использовать jQuery, вам нужно получить доступ к вашему элементу, используя его идентификатор клиента, например:

<script type="text/javascript" >
    function resetForm() {
        document.getElemenyById("<%=TextBox1.ClientID %>").value = "";
    }
</script>    

Кроме того, как указал @Jon, вам нужно либо переименовать значение OnClientClick в resetForm(), либо переименовать функцию JavaScript.

1 голос
/ 12 августа 2011

вам нужно получить значение, используя getElementById

var mybutton= document.getElementById('Button1');
mybutton.value = ""
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...