在剃刀视图上调用函数

时间:2019-02-25 22:33:03

标签: razor model-view-controller razor-pages

我正在尝试在这里做一些非常简单的事情。 MVC和Razor的新道歉 这位于“剃刀视图”页面(.cshtml)。
为什么在单击按钮时ShowMessage函数没有触发

这些功能的代码是否也理想地放在此处或cshtml.cs文件中? 我设法在cshtml.cs文件中调用了一个方法,但是我无法显示警告框来通知最终用户成功或失败,所以现在我正在用ViewBag尝试这种方式。

    @page
    @model IndexModel
    @{
        ViewData["Title"] = "Air Menu page";

        @functions
        {
          public void ShowMessage()
                {        
                    string output = "Hello";
                    ViewBag.Message(output);                  
                }
    }
}

<form asp-page-handler="showmessage" method="post">
        <button class="btn btn-default">Show Message</button>
</form>

1 个答案:

答案 0 :(得分:0)

答案是使用ViewData或可能的ViewBag

public void  OnGetStartKodi()
            {

                int exitcode = 0;
                if (exitcode == 1)
                {
                    ViewData["output"] = exitcode;
                      return Page();                
            }
                else ViewData["output"] = "failed try again exitcode:" + exitcode;               
                  return Page();


            }

和 使用

从剃刀页面获取
 @if (ViewData.ContainsKey("output"))
    {

        <script>alert("@ViewData["output"]")</script>

    }