我正在开发ASP.NET MVC 4应用程序。我试图在控制器将数据发送到视图后更改src属性,但是我的所有尝试都没有结果。 View中的脚本:
<script type="text/javascript">
$(document).ready(function () {
$('#fileupload').fileupload({
dataType: 'json',
url: '/Home/UploadFiles',
autoUpload: true,
done: function (e, data) {
$('.file_name').html(data.result.name);
$('.file_type').html(data.result.type);
$('.file_size').html(data.result.size);
$('.file_source').attr('src', 'D:/somePhoto.jpg'); //this row does not set 'src' of <img/>
}
}).on('fileuploadprogressall', function (e, data) {
var progress = parseInt(data.loaded / data.total * 100, 10);
$('.progress .progress-bar').css('width', progress + '%');
});
});
</script>
<img class="file_source" src="" /> <!--src attribute is just empty--->
你能告诉我在哪里犯了错误吗? 这一行不起作用:
$('.file_source').attr('src', 'D:/somePhoto.jpg'); //this row does not set 'src' of <img/>
标签的属性'src'不会改为src =“D:/somePhoto.jpg”。 任何帮助将不胜感激。
答案 0 :(得分:1)
您是否尝试过从图像源内的网络分配有效的图像位置?我很确定,D:\somePhoto.jpg
是服务器端的位置。如果是这种情况,则javscript
不知道如何获取它,因为js
在客户端运行,并且在您已经从控制器发送数据之后,它无能为力。< / p>
首先使用可从网络上测试的图像进行测试,例如 - http://sci8.com/wp-content/uploads/2014/10/test-all-the-things.jpg
所以将代码更改为 -
$('.file_source').attr('src', 'http://sci8.com/wp-content/uploads/2014/10/test-all-the-things.jpg');
如果有效(我很确定,它会),那么你就知道原因了。只需将somePhoto.jpg
保留在项目Content
文件夹中的某个位置,然后使用该网址。
例如
$('.file_source').attr('src', 'http://<hostaddress>/content/image/somePhoto.jpg');
如果您仍然遇到问题,请告诉我。