本文目錄一覽:
如何判斷uploadify插件是否選擇了文件
這裡要說的問題是為了驗證上傳文件是否已經存在於服務器,就需要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文件接收:
這樣就大功告成了,可以判斷文件是否存在了。
如下圖:
上傳文件前先用js判斷有沒有選擇文件
我再添加一個button。
1
2
3
4
5
6
7
8
input type=”button” id=”btn”/
script type=”text/javascript”
document.getElementById(“btn”).onclick=function(){
if(document.getElementById(“fileID”).value==””){
alert(“請上傳附件”);
}
}
/script
用JS怎麼判斷上傳文件控件是否未選擇文件
html中的控件一般都只是提供一個功能,具體的邏輯細節需要自己寫的,比如你可以在控件上加一個required屬性,這樣文件上傳控件為空的時候就不能上傳了,或者你也可以用js判斷這個文件域為空的時候也不讓上傳也是同理的。
原創文章,作者:WUYM,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/131347.html