【发布时间】:2021-08-10 05:55:19
【问题描述】:
我正在制作一个ASP.NET Web 表单应用程序。我正在尝试一种简单的方式来访问表单上的多个控件。
我正在尝试访问 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>),这将很简单,但我无法转换页面上的所有元素。
我不确定哪里出了问题,因为网上的所有信息都说它是正确的。有什么办法可以解决这个问题吗?
【问题讨论】:
-
你说你想在一页上使用多个按钮。你能告诉我们你尝试了什么吗?无论如何,对我来说还不清楚为什么那不起作用。忘记表单标签,只需添加另一个或两个按钮,然后向我们展示您在页面和代码隐藏中所做的事情。重复您对第一个按钮所做的操作应该是您需要做的所有事情。
-
@wazz 我刚刚在不同的 ID 和 onserverclick 名称下粘贴了相同的 按钮标签。我不能把两者都放在一个表格中,因为它们之间还有其他元素。这仅在有表单标签包裹标签时才有效
-
是的,需要 (1) 个表单标签,我并不是说不要使用表单标签。但我还是不明白问题出在哪里。
-
我有两个按钮。它们之间有元素。如果我将这些元素与两个按钮标签一起封装起来,ASP 会报告文件损坏错误。
-
@wazz 例如,body 标签不能在表单中。
标签: c# html asp.net vb.net webforms