我们可以给Razor语法变量赋Javascript变量值吗?
。
var Javascript-variable=$("#test").val();
@html.Actionlink("User","Index",new {Id='Javascript-variable'})
我们可以传递Java脚本变量值给Razor语法变量吗?
不,因为在这个上下文中使用的JavaScript是在客户端执行的,而Razor代码是在服务器端执行的。实际上,它们没有关系。
但是我认为您想要在JavaScript中使用服务器上提供的路由功能,这是可能的。我们可以使用Razor来生成JavaScript。
- 将
ActionLink()
调用嵌入到JavaScript片段中。 - 在服务器端呈现URL结构,使用
ActionLink()
方法,该方法是路由感知的。 - 在客户端获取一个值
- 在URL结构中插入值
var url = '@Html.ActionLink("User","Index",new { Id = 0 })';
var id = $("#test").val();
var mergedUrl = url.replace(/0$/, id); // replace the 0 with a real ID