【发布时间】:2012-01-04 20:28:55
【问题描述】:
我正在使用 asp 表单,想知道是否可以将标准按钮替换为使用 CSS 设置样式的 HTML 元素。
我的登录页面使用标准按钮
<asp:Button ID="LoginButton" runat="server" Text="Login"
onclick="LoginButton_Click" />
链接到执行登录检查的代码 (C#)。
我看到一些不错的按钮使用 HTML <button> 元素实现并使用 CSS 进行样式设置,这些按钮可以具有图像和翻转突出显示等功能。基本的 HTML 如下所示
<button type="submit" class="positive" onclick ="...">
<img src="/icons/tick.png" alt=""/>
Login
</button>
我看到另一个讨论 Difference between asp:button and html's button 的问题,所以我知道 <button> 元素不是直接替换,但我想知道 asp:button 是否可以替换并仍然调用 @987654329 @C#代码背后?
编辑:
虽然我使用的是 ASP,但我不介意在必要时使用一些客户端 javascript。
我看到的让我思考这个问题的按钮在这里找到:Rediscovering the Button Element
编辑 2:
我使用LinkButton asp 控件尝试了answer from XIII,并且效果很好,按照我的意愿呈现按钮并在单击时激活C#
<asp:LinkButton ID="LoginBtn" CssClass="button positive"
OnClick="LoginButton_Click" runat="server">
<img src="/icons/tick.png" alt=""/>
Login
</asp:LinkButton>
Javascript 被插入到页面中(正如 Curt 所提到的),这对我来说不是问题,但可能对其他人来说;但由于 asp:loginview 和其他与表单身份验证相关的控件已经需要 javascript,我不确定这是解决方案的问题。
我决定接受 jwiscarson 的回答,因为这是一个更简洁的实现,尽管我认为,<button> 可以替代<asp:button>
【问题讨论】: