如何判断uploadify插件是否选择了文件 5

 我来答
电商运营的机会
2017-06-05 · 知道合伙人互联网行家
电商运营的机会
知道合伙人互联网行家
采纳数:436 获赞数:998
潭州教育网络科技有限公司最佳电商运营总监。

向TA提问 私信TA
展开全部

这里要说的问题是为了验证上传文件是否已经存在于服务器,就需要checkExisting这一选项,看页面JS代码如下:

'checkExisting' : '/static/js/plugins/uploadify/check-exists.php',

会交给check-exists.PHP后台文件来处理判断文件存不存在,最初的源文件是这样的:

就这么几句话,按常理来说,有了路径文件名是可以file_exists()判断文件是否存在服务器,但忽略了一个问题,就是如果自定义了上传文件存放的路径,如上所看到的floder:

若是这样的话,文件判断那就肯定是不存在的了,因为路径都不对了,肯定找不到该文件……,此时看到,既然文件名能够$_POST[]过来,那希望这个folder也能POST过来,那就来打印看看到底$_POST里面放了些什么,结果有些失望:

array (size=1)

'filename' => string 'OOOPIC_SHIJUNHONG_20090809ad6104071d324dda.jpg' (length=46)
就只有filename,什么都没了,接着还是不甘心,对JS不咋样的还是硬着头皮去看jquery.uploadify.min.js的源码,皇天不负有心人!找了好久终于找到了,相关代码如下:

原来这是已ajax提交过来的,其中的数据就只有filename,于是就想到把floder也传过去,修改:

data: {

filename: d.name,
floder: e.formData.folder
},

然后再在check-exists.php文件接收:

这样就大功告成了,可以判断文件是否存在了。

如下图:

nd04
2013-09-24
知道答主
回答量:2
采纳率:0%
帮助的人:3067
展开全部
可以间接的判断已选择文件的总数来判断是否选择了文件。
即用方法$("#uploadmediaSrcfile").data('uploadify').queueData.queueLength;
获取到uploadify组件中选择的文件总数,如果返回的值大于0,则表示选择了文件,
反之则没有选择文件。
其中:
1、uploadmediaSrcfile是类型为file的input标签的id值;
2、date('uploadify')中的uploadify为固定值;
3、此方法在版本为Uploadify v3.2.1中是测试通过的。
具体可以参考jquery.uploadify.js源文件中的第312行和319行的代码
(它自己也是通过这种方式获取选择文件总数的)。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友8d48395b5
2013-07-01
知道答主
回答量:22
采纳率:0%
帮助的人:11.4万
展开全部
var num = $('#file_upload').uploadifySettings('queueSize');
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式