C# html超链接调用方法

发布于 2024-10-21 16:20:56 字数 450 浏览 1 评论 0原文

是否可以使用常规超链接来调用方法,如下所示:

<div class="menu">
<ul>
<li><a href=#> click this </a></li>
<li><a href=#> click this again </a></li>
</ul>
<div>

调用此方法:

protected void menuPersonTab_OnMenuItemClick(object sender, MenuEventArgs e)
{
    mvPerson.ActiveViewIndex = Int32.Parse(menuPersonTab.SelectedValue);
}

不?是的?

is it possible to call a method using a regular hyperlink like so:

<div class="menu">
<ul>
<li><a href=#> click this </a></li>
<li><a href=#> click this again </a></li>
</ul>
<div>

call this method:

protected void menuPersonTab_OnMenuItemClick(object sender, MenuEventArgs e)
{
    mvPerson.ActiveViewIndex = Int32.Parse(menuPersonTab.SelectedValue);
}

no? yes?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

執念 2024-10-28 16:20:56
<a ID="MyAnchor"
    OnServerClick="menuPersonTab_OnMenuItemClick" 
    runat="server"> Click This </a>

此处 是来自 MSDN 的解释示例。

<a ID="MyAnchor"
    OnServerClick="menuPersonTab_OnMenuItemClick" 
    runat="server"> Click This </a>

Here is an explained example from MSDN.

软甜啾 2024-10-28 16:20:56

在真正的 C# 中,不需要,因为 .Net 框架处理所有 javascript 和回发
但总有办法解决......
但微软不建议这样做

In real C#, no because .Net framework handles all the javascript and post-back
But there is always a work around...
But Microsoft doesn't recommend that

萤火眠眠 2024-10-28 16:20:56
<a href="<%# menuPersonTab_OnMenuItemClick(); %>">Click this</a>
<a href="<%# menuPersonTab_OnMenuItemClick(); %>">Click this</a>
浮华 2024-10-28 16:20:56

这完全取决于您希望 C# 代码执行的位置:

在服务器上:
如果您的服务器是 ASP.Net 服务器,则可以通过发出新请求来执行服务器上的任何方法。如果您使用 WebForms,只需添加一个服务器端控件。使用 MVC,新请求将通过 Action 方法。

在客户端

方法 1:在 C# 应用程序中托管 Web 浏览器控件。您控制浏览器。所以你可以(几乎)做你想做的一切。

方法 2:向页面添加 ActiveX (yuc) 或 Silverlight 控件。您在沙箱中运行,但可以捕获单击事件并运行您的代码。

It all depends on where you want the C# code executed:

On the server:
If your server is an ASP.Net server, you can execute any method on the server, by making a new request. If you use WebForms just add a server side control. Using MVC, a new request goes through an Action method.

On the client

Method 1: Host the webbrowser control in your C# application. You control the browser. So you can do (almost) all you want.

Method 2: Add an ActiveX (yuc) or Silverlight control to the page. You run in a sandbox, but it is possible to catch the click event, and run your code.

り繁华旳梦境 2024-10-28 16:20:56

是的,这是可能的。有几种可能的方法可以做到这一点。但强烈不推荐它们。
其中之一调用onclick __doPostBack("elementId","parameters")函数。

<a id="LinkButton1" href="javascript:__doPostBack('LinkButton1','')">LinkButton</a>

Yes, it is possible. There are few possible ways to do it. But they are strongly not reccomended.
One of them calling onclick __doPostBack ("elementId","parameters") function.

<a id="LinkButton1" href="javascript:__doPostBack('LinkButton1','')">LinkButton</a>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文