蛋疼了好几天,醉醉的了,求解答。
想找一个比较好的文件上传插件学习一下,就先从uploadify开始吧,然后就开始了我的蛋疼之旅,我首先从网上download下来js文件,然后引用到我的MVC项目中,然后一切都有如网上的五花八门的教程一样,通用的使用方法是不变的,我就这么写了
$(function () { $("#uploadify").uploadify({ 'buttonText': '选择文件', 'uploader': '~/Content/uploadify/uploadify.swf', 'script': 'User/Heelo', 'cancelImg': '~/Content/uploadify/uploadify-cancel.png', 'folder': 'UploadFile', 'queueID': 'fileQueue', 'auto': false, 'multi': true, }); $("#Up").click(function () { if ($("#fileQueue").html() == "") { alert("请选择要上传的文件"); } }); });
body部分仍然是网上教程最通用的写法了如下:
<div id="fileQueue"></div> <div> <div> <input type="file" name="uploadify" id="uploadify" /> <input type="button" id="Up" name="Up" value="上传" class="button" /> </div> </div>
我的head部分也是很飘准的这么写的,各JS文件路径绝对是正确的。。。
<link href="~/Content/uploadify/default.css" rel="stylesheet" /> <link href="~/Content/uploadify/uploadify.css" rel="stylesheet" /> <script src="~/Scripts/uploadify/jquery-1.3.2.min.js"></script> <script src="~/Scripts/uploadify/swfobject.js"></script> <script src="~/Scripts/uploadify/jquery.uploadify.v2.1.0.min.js"></script>
这么搞在vs2008中是可以运行的,就是这么一个效果(这是一个最普通的Webform测试小页面):
但是同样的代码在VS2013的MVC项目中就是这样的效果:
真实起了怪了,那个button按钮没有文字,并且点击那块区域,什么反应都没有,都不会弹出选择文件的对话框,难道Vs2008跟VS2013对这个的支持程度不一样??太蛋疼了。。。。附上两个IDE中的具体代码:
VS2008代码:
<head runat="server"> <title>Uploadify</title> <link href="JS/jquery.uploadify-v2.1.0/example/css/default.css" rel="stylesheet" type="text/css" /> <link href="JS/jquery.uploadify-v2.1.0/uploadify.css" rel="stylesheet" type="text/css" /> <script src="JS/jquery.uploadify-v2.1.0/jquery-1.10.2.min.js" type="text/javascript"></script> <%-- <script type="text/javascript" src="JS/jquery.uploadify-v2.1.0/jquery-1.3.2.min.js"></script>--%> <script type="text/javascript" src="JS/jquery.uploadify-v2.1.0/swfobject.js"></script> <script type="text/javascript" src="JS/jquery.uploadify-v2.1.0/jquery.uploadify.v2.1.0.min.js"></script> <script type="text/javascript"> $(document).ready(function() { $("#uploadify").uploadify({ 'uploader': 'JS/jquery.uploadify-v2.1.0/uploadify.swf', 'script': 'UploadHandler.ashx', 'cancelImg': 'JS/jquery.uploadify-v2.1.0/cancel.png', 'folder': 'UploadFile', 'queueID': 'fileQueue', 'auto': false, 'multi': true, }); }); </script> </head> <body> <div id="fileQueue"> </div> <input type="file" name="uploadify" id="uploadify" /> <p> <a href="javascript:$('#uploadify').uploadifyUpload()">上传</a>| <a href="javascript:$('#uploadify').uploadifyClearQueue()"> 取消上传</a> </p> </body> </html>
VS2013代码:
@{ Layout = null; } <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width" /> <title>Heelo</title> <link href="~/Content/uploadify/default.css" rel="stylesheet" /> <link href="~/Content/uploadify/uploadify.css" rel="stylesheet" /> <script src="~/Scripts/uploadify/jquery-1.3.2.min.js"></script> <script src="~/Scripts/uploadify/swfobject.js"></script> <script src="~/Scripts/uploadify/jquery.uploadify.v2.1.0.min.js"></script> <script type="text/javascript"> $(function () { $("#uploadify").uploadify({ 'buttonText': '选择文件', 'uploader': '~/Content/uploadify/uploadify.swf', 'script': 'User/Heelo', 'cancelImg': '~/Content/uploadify/uploadify-cancel.png', 'folder': 'UploadFile', 'queueID': 'fileQueue', 'auto': false, 'multi': true, }); $("#Up").click(function () { if ($("#fileQueue").html() == "") { alert("请选择要上传的文件"); } else { window.parent.document.getElementById('<%=file_id %>').value = ""; $('#custom_file_upload').uploadifyUpload(null, false); //一个一个传 //$('#custom_file_upload').uploadifyUpload(null, true);//同时传 } }); }); </script> </head> <body> <div id="fileQueue"></div> <div> <div> <input type="file" name="uploadify" id="uploadify" /> <input type="button" id="Up" name="Up" value="上传" class="button" /> </div> </div> </body> </html>
真实没辙了,不知道问题在哪.....各位有用过的,或者出现过类似问题的兄台或者妹子解答一下
男的果照不看,所以不答了
还可提供各类岛国老师果照
我还以为是个妹子
我的妹子同事也无法解决,她说如果能够把这事办了,她可以提供微信账号进行后续更进一步技术交流,妹子是单身,刚毕业的~~~
看起來是有什麼東西沒載入
swf?
这个应该不会影响吧,顶多只是个按钮没有了特效,装载完swf,按钮的样式就是那个swf的样式,但是没有样式,它绑定的事件不可能会丢失吧
@离水的鱼丶:
打開IE的開發者工具,用網路看看,兩者有什麼差異
P.S. 我確實碰過swf路徑被改,結果就是這個樣子
不会,我是来看惊喜的=。=
把版本升级下?
swf没加载到
Chrome F12,看资源是否没加载,也就是404错误。
推荐使用plupload!最新的,很好用