javascript - 从 javascript 函数调用 razor c# 函数

标签 javascript c# asp.net razor

我在一个文件中有一个 html 链接

<a href="#" onClick="xupdate('Home')" id="padlink">Home</a>

单击时我想要执行一个 js 函数(在另一个文件中,扩展名为 js),即:

function xupdate(string) {
     document.title = string;
     //Call razor c# function
}

现在我在 cshtml 文件中有一个 c# 函数(它读取文件并显示它们的信息):

@helper fileRead(String file) {
            var dataFile = Server.MapPath(file);
            Array userData = File.ReadAllLines(dataFile);
            foreach (string dataLine in userData) {
                foreach (string dataItem in dataLine.Split(',')) {
                    //dataItem <text>&nbsp;</text>
                    @Html.Raw(dataItem);
                 }
             }
}

我想从js的xupdate()函数中调用fileRead函数,将string的值作为参数传给fileRead,有办法吗?

注意:我已经在 cshtml 文件中包含了 html 链接,并且我的函数可以完美运行。我还知道调用 c# 函数时必须包含文件扩展名。

最佳答案

您不能直接从 javascript 调用 C# 函数,因为 javascript 在客户端执行,而 C# 函数在服务器端执行。

因此您必须以其他方式调用它,例如 AJAX。

在 Controller 中定义您的函数并通过 AJAX 调用来调用它。

关于javascript - 从 javascript 函数调用 razor c# 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27631954/

相关文章:

javascript - 将对象数组从 JavaScript 发送到 C# Controller

JavaScript 提升函数与函数变量

javascript - 传单和 MongoDB 半径

c# - unity mobile scrollrect 过于敏感

javascript - 如何在ajax回调中从 'success'调用代码隐藏方法?

asp.net - SignalR javascript 回调不起作用

asp.net - 在部署时将本地 (JQuery) 链接转换为 CDN 链接

javascript - 从前一个函数添加到数组

c# - 修改选中状态后,不会触发Checkedchanged事件的复选框事件处理程序

c# - 如何重构重载方法