javascript - 将 js 变量或 inout 值传递给 razor

标签 javascript c# jquery asp.net-mvc razor

是否可以将 js 变量或 html 值传递给 razor?

@{
    int n = ?????;
    Html.RenderPartial("_AddressBookEdit", @Model.Addresses[n]);
}

如何从 javascript 设置变量 n 或从隐藏字段为其赋值?

n = $('#myvar').val()'; 

上面的代码不起作用。

最佳答案

您在这里缺少基本的理解。我已经回答了你这个问题的一个版本,但是我认为你没有误解这一点。

你不能在不通过服务器的情况下将任何东西从 javascript 传递到 razor。

那是因为 Razor 是在服务器端执行的(因此在其中使用了 c#)。调用 Controller ,实例化该类,然后调用与请求的操作相匹配的方法,然后返回一个 View 。返回 View 时,将执行 View 中的 c# 代码。执行所有代码后,它会在响应中发出 html 页面,然后 javascript 在客户端上运行。要从 javascript 到 razor,您必须发出新请求以从头开始走这条路,以便最终返回。

在服务器端解决这个问题。

关于javascript - 将 js 变量或 inout 值传递给 razor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15991161/

相关文章:

c# - 保护条款不触发

jQuery UI slider 、HTML5 全屏、Google Chrome 和状态栏

javascript - 防止自动 HTML 特殊字符编码

javascript - Ajax选择并自动加载数据

javascript - React Redux 存储将 props 传递给 child 的问题

javascript - 当计时器达到 00 :00? 时,如何设置 5 秒的延迟

javascript - d3 将鼠标悬停在表格上时为图表制作动画

iPad 上的 JavaScript 错误

c# - 为什么VS2017在watch View 中查看基类对象时显示的是派生类的成员值?

c# - 使用 LINQ 基于多个参数进行过滤?