2011-08-23 39 views
0

我在写一个wep应用程序,其中我在这里和那里都使用了Razor语法。 (它建立在CMS Umbraco上)。Razor:单击时调用帮助器方法

我想要做的是在单击链接(或按钮或其他)时调用方法。就像这样:

<a id="anchorId" class="AnchorClass" href="#" 
onclick="@ClassName.Methodname(var1 v, var2 v)"> 
LinkText</a> 

问题是Razor想要在页面加载时执行此操作,并且不会等待我的点击。 有谁知道解决这个问题的方法?

  • 我试图通过javascript将一个新的.cshtml加载到一个不可见的div中,但没有奏效。
  • 这不是一个MVC应用程序。

谢谢

回答

0

你试图用JavaScript来混合服务器端代码。
这是行不通的。

您需要将链接指向执行代码的不同服务器端页面。
或者,您可以使用Javascript将AJAX请求发送到执行代码的不同服务器端页面。

+0

我之前做过的尝试是在javascript中使用jQuery .load()来加载另一个.cshtml页面然后执行代码的单击事件。但这并不奏效。也许我会按照你的建议去做。当我尝试过时,我会回来的。感谢您的输入。 – AndersDaniel

+0

它为什么不起作用? – SLaks

+0

这可能是我的一个编程错误。 无论如何,我用你的建议,并提出了一个ajax请求,我刚刚为这个事业写了一个web服务,现在我已经实现了我的目标。我不知道为什么我没有尝试过这个,但感谢把我推向了正确的方向! – AndersDaniel