首页 > 解决方案 > ASP.NET Webforms 多个按钮

问题描述

我正在制作一个ASP.NETWeb 表单应用程序。我正在尝试一种简单的方法,可以访问表单上的多个控件。

我正在尝试访问html按钮的serverClick事件,但它一直没有工作,并且每页只能在一个按钮上工作。

我首先尝试使用此代码在单击 HTML 按钮时获取单击事件。这是 HTML 按钮的代码。

<form runat="server">
<div class="btn-container">
<a runat="server" onserverclick="infobutton_Click" class="inf-btn" exc-content="inf_button" id="infoButton">Click Here for More Information</a>
</div>
</form>

此代码获取按钮的单击事件并显示示例消息框。

Protected Sub infoButton_Click(ByVal sender As Object, ByVal e As EventArgs)
        ScriptManager.RegisterClientScriptBlock(Me, Me.[GetType](), "alertMessage", "alert('" & "The Button Was Clicked" & "')", True) 'Displays a JavaScript Alert
End Sub

此代码适用于每页一个按钮,但是,我想在一页上使用多个按钮。如果我删除<form>标签,按钮点击事件不会注册。如果我<form>为每个按钮添加一个标签,它会报告一个错误,即不能有多个<form>标签。如果我用标签括住整个页面<form>,则错误报告配置“已损坏”。

如果我有一个 ASP.NET 按钮控件 ( ),这将很简单<asp:button>,但我无法转换页面上的所有元素。

我不确定哪里出了问题,因为网上的所有信息都说它是正确的。有什么办法可以解决这个问题吗?

标签: c#htmlasp.netvb.netwebforms

解决方案


<body>
    <form id="form1" runat="server">

        <div class="btn-container">
            <a runat="server" onserverclick="infobutton1_Click" id="infoButton1">
                Click Here for More Information</a>
            <a runat="server" onserverclick="infobutton2_Click" id="infoButton2">
                Click Here for More Information</a>
            <a runat="server" onserverclick="infobutton3_Click" id="infoButton3">
                Click Here for More Information</a>
        </div>

    </form>
</body>

代码背后 (C#)

protected void infobutton1_Click(object sender, EventArgs e)
{
    ScriptManager.RegisterClientScriptBlock(this, Page.GetType(), 
        "alertMessage", "alert('" + "Button 1 Was Clicked" + "')", true);
}
protected void infobutton2_Click(object sender, EventArgs e)
{
    ScriptManager.RegisterClientScriptBlock(this, Page.GetType(), 
        "alertMessage", "alert('" + "Button 2 Was Clicked" + "')", true);
}
protected void infobutton3_Click(object sender, EventArgs e)
{
    ScriptManager.RegisterClientScriptBlock(this, Page.GetType(), 
        "alertMessage", "alert('" + "Button 3 Was Clicked" + "')", true);
}

推荐阅读