javascript - 如何在 Razor 语法中使用 JavaScript

标签 javascript asp.net-mvc razor

我需要在 Razor 语法中使用 JavaScript。 这是我的 JavaScript 函数。我需要获取我的元素 ID,并基于此,我尝试从模型的图像列表中获取图像 URK。

<script>
    function pickThisPicture(element) {
        var id = element.id;
        document.getElementById("big-picture").src = "@Url.Content(Model.Images[id].Url)";
    }
</script>

如何将发送到函数的元素 ID 放入 Model.Images 对象?

我尝试过类似的方法,但没有成功:

document.getElementById("big-picture").src = "@Url.Content(Model.Images[@:id].Url)";
document.getElementById("big-picture").src = "@Url.Content(Model.Images[<text>id</text>].Url)";

谢谢。

最佳答案

你无法做你正在尝试的事情。请记住,Razor 代码在页面加载时在服务器上运行。页面完成渲染后,Javascript 在客户端加载。您不能简单地调用服务器代码,这取决于客户端代码的结果。

为了使用仅在运行时已知的值进行服务器调用,您必须使用某种 AJAX 调用。

关于javascript - 如何在 Razor 语法中使用 JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31276122/

相关文章:

javascript - JS 无法读取即将到来的数组元素

javascript - Jquery 验证示例不起作用

asp.net-mvc - 在新的MVC 5中使用Bootstrap 3 RC1

c# - 在表格排序器不应用表格 css 样式之后?

c# - 传入字典的模型项是 'System.Tuple` 类型的?

javascript - Kurento-rtsp2webrtc 无法在 AWS 上运行

javascript - 单击外部时如何使div消失?

javascript - 请求 promise 返回未定义但存在

asp.net-mvc - 在 Razor 中创建 EditorTemplates 时出错

c# - 将 UICulture 设置为 Html.EditorFor 方法