вызов пользовательского метода @helper на веб-страницах MS из события на стороне клиента - PullRequest
0 голосов
/ 08 июня 2011

У меня есть страница myPage.cshtml. я написал метод @helper (myMethod ()) в myHelper.cshtml. Я могу вызвать вспомогательный метод на странице (@ myHelper.myMethod ();), и он отлично работает.

Как мне вызвать этот же метод из события, инициированного пользователем, например (menu.item.click, button.click, link click)?

1 Ответ

0 голосов
/ 08 июня 2011

Поскольку ваш метод выполняется в коде на стороне сервера, вам придется создать способ вызова кода на вашем сервере с клиента. Например, у вас может быть такой метод действия:

[HttpPost]
public ActionResult MyHelperCaller()
{
    // Returns the contents of the 'myHelperCaller' view:
    return this.View();
}

... где myHelperCaller View содержит вызов вашего вспомогательного метода 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>
...