MVC JScript上传照片和显示预览

时间:2016-10-18 14:01:54

标签: javascript razor asp.net-mvc-5 image-uploading

我要求用户在创建新记录时能够上传项目的照片。

很简单,我遇到的麻烦就是在提交之前预览上传

到目前为止,我所拥有的是最后一行。

            <img id="AssetPic" src="~/Content/missing.png" alt="Upload Photo" width="250" height="250" /><br />
            <input type="file" accept="image/*" onchange="loadFile(event)" name="fileupload" />
            <script>
                function createObjectURL(file) {
                    if (window.webkitURL) {
                        return window.webkitURL.createObjectURL(file);
                    } else if (window.URL && window.URL.createObjectURL) {
                        return window.URL.createObjectURL(file);
                    } else {
                        return null;
                    }
                }

                var loadFile = function (event) {
                    var output = document.getElementById('AssetPic');
                    output.alt = "Your Photo";
                    output.src = createObjectURL(event.currentTarget.files[0]);
                };
            </script>

问题行

 output.src = createObjectURL(event.currentTarget.files[0]);

错误消息

0x800a138f - JavaScript runtime error: Unable to get property 'files' of undefined or null reference

然而,如果我将它复制并粘贴在一个孤独的记事本文件中并运行它,它工作正常,这使我相信属性[文件]受到另一个脚本的干扰。

它是一个标准MVC5应用程序,我添加的唯一脚本是JSpritely。

有没有人知道让这个工作的解决方案?它愚蠢的沮丧!

1 个答案:

答案 0 :(得分:0)

确保IE的兼容模式未开启.....面掌