将js变量或输入值传递给razor

Posted

技术标签:

【中文标题】将js变量或输入值传递给razor【英文标题】:Pass js variable or inout value to razor 【发布时间】:2013-04-06 03:35:29 【问题描述】:

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

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

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

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

上面的代码不起作用。

【问题讨论】:

【参考方案1】:

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

如果不通过服务器,您无法将任何内容从 javascript 传递到 razor。

那是因为剃须刀是在服务器端执行的(因此其中有 c#)。调用控制器,实例化该类,然后调用与请求的操作匹配的方法,然后返回视图。返回视图时,执行视图中的c#代码。执行完所有代码后,它会在响应中发出 html 页面,然后 javascript 在客户端上运行。为了让您从 javascript 到 razor,您必须发出一个新请求以从头开始通过该路径才能最终返回。

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

【讨论】:

以上是关于将js变量或输入值传递给razor的主要内容,如果未能解决你的问题,请参考以下文章

如何将 Fetch API 的值传递给变量? [复制]

在 MVC/Razor 中,如何获取多个复选框的值并将它们全部传递给控制器​​?

php如何将变量的值传递给html

将变量传递给函数\使用该变量返回一个新值\重复直到值达到 0

jQuery 更新隐藏的输入值,但不传递给 POST 变量

将 Razor 语法变量传递给 Html Helper 的 javascript onclick