从 ASP.NET 调用 Javascript 函数

Calling a Javascript function from ASP.NET

我的代码是:

<body>
<script type="text/javascript">
    function change() {
        alert("Hello");
    }
</script>
<form id="form1" runat="server">
<div>
    <asp:Button ID="Button1" runat="server" Text="Button" OnClick="change"/>
</div>
</form>
</body>

我得到的错误是: CS1061:'ASP.webform1_aspx' 不包含 'change' 的定义,并且找不到接受类型 'ASP.webform1_aspx' 的第一个参数的扩展方法 'change'。

有什么问题?

应该是OnClientClick:-

<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="change"/>

OnClick 事件用于绑定单击按钮时的服务器端方法。

OnClick="change" 这意味着您应该在服务器端

创建方法名称为 change

类似这样的事情

protected void change(object sender,EventArgs e)
{

}

在服务器端

if(!Page.IsPostBack)
{
Button1.Attributes.Add("onclick","change();")
}

在 .aspx 上

<asp:Button ID="Button1" runat="server" Text="Button" />

应该是OnClientClick:-

<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="return change();"/>

OnClick 事件用于在单击按钮时绑定服务器端方法。

<script type="text/javascript">
    function change() {
        alert("Hello");
        return false;
    }
</script>

并不是说 return false 会通过按钮停止回发。
为此,您还应该在 OnClientClick="return change();"

等按钮上调用函数之前提及 return