asp.net mvc -如何在Razor语法中使用JavaScript
asp.net mvc - How to use JavaScript inside Razor Syntax
我需要在我的Razor语法中使用JavaScript。这是我的JavaScript函数。我需要获得我的元素ID,并基于此,我尝试从我的模型的图像列表中获取Image URK。
<script>
function pickThisPicture(element) {
var id = element.id;
document.getElementById("big-picture").src = "@Url.Content(Model.Images[id].Url)";
}
</script>
如何将发送给函数的元素的ID放到模型中?图像对象?
我试过这样做,但都不起作用:
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调用。
一个建议可能是使用包含"bigger"图像URL的数据值生成元素,然后在页面侧函数中访问该值。
<image data-big-url='@Url.Content(Model.Images[id].Url' class='smallimages' />
这里的"id "将是列表元素的索引(服务器端)然后以某种方式访问它,比如jQuery它可能是:
$(document).ready(function(){
$('.smallimages').on('click',function(){
var big = $(this).data('big-url');
document.getElementById("big-picture").src = big;
});
});
相关文章:
- Javascript未捕获语法错误意外的标识符错误
- Javascript语法向设置发出sessionStorage值
- javascript自执行函数-不同的语法
- 函数的Javascript语法
- 有没有针对带有表的JavaScript的Markdown语法解析器
- 重写需要javascript中带有import关键字的语法
- 如何定义const函数javascript(语法糖)
- 循环的Javascript冻结浏览器,没有语法错误
- 为什么匿名函数本身就是javascript中的语法错误
- 这怎么不是语法错误?这毫无意义!(javascript)
- javascript匿名函数语法
- javascript在代码背后的语法
- Onclick不会启动..可能存在javascript语法问题
- 在javascript函数的循环中设置全局布尔变量的最佳语法
- 什么's当前命名空间/类中JavaScript子命名空间/类的语法
- 我可以将为java创建的语法文件转换为javascript的语法文件吗
- “”附近的语法错误;elseif”;Javascript
- javascript eval方法语法
- 用jquery替换javascript语法
- Google 电子表格更新的正确语法 - Javascript