【问题标题】:How to call a C# function from my razor page in the script? [closed]如何从脚本中的剃须刀页面调用 C# 函数? [关闭]
【发布时间】:2021-09-13 00:16:46
【问题描述】:

enter image description here 每次我运行它时,它都会在我按下按钮之前进入 c 函数。

【问题讨论】:

  • 欢迎使用 stackoverflow。请包括代码、错误消息和其他基于文本的信息作为文本,而不是屏幕截图。我推荐taking the tour,以及阅读how to ask a good questionwhat's on topic。另外,请记住:包含所有 c# 代码的完整 razor 视图会在发送到浏览器之前执行。因此在任何客户端 JS 可以执行之前.
  • 您需要重新审视 Web 应用程序堆栈的基础知识。您有一个服务器端应用程序和 Web 客户端应用程序的部门。这是 2 个不同的节点。您不能直接从客户端代码调用您的 c# 代码,因为它们在 2 个不同的节点上执行。如果您希望客户端代码与服务器通信,则必须向服务器进行 Web 调用(这很常见)。您可以研究如何使用 javascript 中的 ajax 执行此操作。您还需要编写服务器端代码来处理此类请求,请参阅 c# 的 web-api。
  • 为了让任何人提供一些帮助,您需要向我们展示您的页面代码并详细说明您希望做什么。

标签: c# asp.net-core razor-pages


【解决方案1】:

如果你想在脚本中调用C#函数,可以尝试使用ajax调用控制器动作,并在动作中调用c#函数,这里有一个demo:

public IActionResult TestFunction() {
            return View();
        }
        public List<string> CallFunction()
        {
            return function();
        }
        public List<string> function()
        {
            return new List<string> { "1", "2", "3" };
        }

查看:

<input id="data" />
<button onclick="CallFunction()">CallFunction</button>
<script>
    function CallFunction() {
        $.ajax({
                type: "GET",
                url: 'CallFunction',
        }).done(function (result) {
            $("#data").val(result.toString());
            });
    }
</script>

结果:

【讨论】:

  • 出于兴趣,你用什么来捕捉你的gif?
  • 执行此操作时出现 404 错误。我认为它与网址有关。
  • 你能分享你的网址吗,你的网址可能是错误的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-10-20
  • 1970-01-01
  • 2018-06-15
  • 2021-10-07
  • 2020-12-20
  • 1970-01-01
  • 2020-04-15
相关资源
最近更新 更多