Ton*_*ony 5 forms asp.net button
我正在使用asp表单,并想知道是否可以用使用CSS样式化的HTML元素替换标准按钮.
我的登录页面使用标准按钮
<asp:Button ID="LoginButton" runat="server" Text="Login"
onclick="LoginButton_Click" />
Run Code Online (Sandbox Code Playgroud)
链接到执行登录检查的代码(C#).
我已经看到一些使用HTML <button>元素实现的漂亮按钮,并使用CSS设置样式,可以具有图像和滚动突出显示等功能.基本HTML看起来像这样
<button type="submit" class="positive" onclick ="...">
<img src="/icons/tick.png" alt=""/>
Login
</button>
Run Code Online (Sandbox Code Playgroud)
我已经看到另一个问题讨论asp:button和html按钮之间的区别所以我理解该<button>元素不是替代品,但我想知道是否asp:button可以替换它并仍然调用LoginButton_ClickC#代码?
编辑:
虽然我使用ASP我不介意使用一些客户端javascript如果有必要.
编辑2:
我尝试使用asp控件从XIII的答案LinkButton,这是有效的,按我想要的方式呈现按钮,点击时激活C#
<asp:LinkButton ID="LoginBtn" CssClass="button positive"
OnClick="LoginButton_Click" runat="server">
<img src="/icons/tick.png" alt=""/>
Login
</asp:LinkButton>
Run Code Online (Sandbox Code Playgroud)
Javascript被插入到页面中(如Curt所述),这对我来说不是问题,但可能适用于其他人; 但由于asp:loginview与表单身份验证相关的其他控件已经需要javascript,我不确定这是解决方案的问题.
我决定接受jwiscarson的回答,因为这是一个更清洁的实现,尽管我认为,<button>可以直接替代<asp:button>
你的问题的答案:
是否可以替换 asp:button 并且仍然调用后面的 LoginButton_Click C# 代码?
是是的。如果你有一个像这样的按钮:
<button type="submit" id="submit" class="positive" runat="server">Submit</button>
Run Code Online (Sandbox Code Playgroud)
您需要设置的属性不是 onclick,而是onserverclick。您还可以执行以下操作:
protected override OnInit(EventArgs e)
{
submit.ServerClick += new EventHandler(submit_ServerClick);
}
Run Code Online (Sandbox Code Playgroud)
如果您需要在该按钮上设置样式,我认为解决该问题的最佳方法是通过 CSS 类,就像您在示例中所使用的那样。
| 归档时间: |
|
| 查看次数: |
2571 次 |
| 最近记录: |