本例子要告訴你幾種處理辦法,一是用js 或者是jquery遍歷判斷,另一種是傳給php之后利用tmp_name值來判斷,方法都簡單下面我們一起來看看.
單個表單時,代碼如下:
- <form action="?" method="post" enctype='multipart/form-data'>
- 文件上傳:<input type="file" name="file" id="file" />
- <input type="submit" id="send" value="提交" />
- </form>
- <?php
- //判斷pic文件框是否已經選擇文件
- if (!emptyempty($_FILES['file']['tmp_name'])) {
- echo '已選擇文件';
- }else {
- echo '請選擇文件';
- }
- //PS:$_FILES后面的['tmp_name']一定不要忘寫,它表示是一個臨時的意思
- ?>
當然這個可以先用JS去判斷一下,方法如下:
- <script>
- var send=document.getElementById("send");
- send.onclick=function() {
- var file=document.getElementById("file").value;
- if (file.length<1) {
- alert('請選擇圖片');
- return false;
- }
- }
- </script>
多文件上傳時,表單中有多個<input type="file" name="uploadfile" contentEditable="false" style="width:80%">,提交表單時需要判斷其中至少要有一個input已經選擇好文件,代碼如下:
- <input type="file" name="uploadfile" contentEditable="false" style="width:80%"><br>
- <input type="file" name="uploadfile" contentEditable="false" style="width:80%"><br>
- <input type="file" name="uploadfile" contentEditable="false" style="width:80%"><br>
- <input type="file" name="uploadfile" contentEditable="false" style="width:80%"><br>
- <input type="file" name="uploadfile" contentEditable="false" style="width:80%">
使用jQuery進行判斷,代碼如下:
- var fileFlag = false;
- $("input[name='uploadfile']").each(function(){
- if($(this).val()!="") {
- fileflag = true;
- return false;
- }
- });
- if(fileFlag) {
- alert("已有選擇好文件的");
- }
只要fileFlag為true,就可以退出each循環,不需要再對剩下的input進行判斷,在each中使用return false退出循環,使用return true結束當前次循環,進行下一次循環.
新聞熱點
疑難解答