我有一个myPage.cshtml页面。我在myHelper.cshtml中编写了一个@helper方法(myMethod())。我可以在页面中调用内联的辅助方法(@ myHelper.myMethod();)并且它可以正常工作。
如何从用户启动的事件(如menu.item.click,button.click,链接点击)调用相同的方法?
答案 0 :(得分:0)
因为您的方法在服务器端代码中执行,所以您必须创建一种从客户端调用服务器上的代码的方法。例如,您可以使用这样的操作方法:
[HttpPost]
public ActionResult MyHelperCaller()
{
// Returns the contents of the 'myHelperCaller' view:
return this.View();
}
... myHelperCaller
视图包含对myMethod()
辅助方法的调用。
然后从客户端调用它,你会使用类似的东西:
<div id="myHelperTarget"></div>
<input id="myHelperTrigger" type="button" value="Call MyHelper" />
<script language="text/javascript">
$("#myHelperTrigger").click(function () {
// Loads the myHelperCaller view into the myHelperTarget div:
$("#myHelperTarget").load("/MyController/MyHelperCaller");
});
</script>