這是jsp頁面上的上傳圖片的代碼javascript
<div style="position: relative;width: 370px;"> <input type='text' name='textfield' id='textfield' class='txt' style="color:red;" value="圖片規格爲300*100" onfocus="this.value=''" onblur="if(this.value==''){this.value='圖片規格爲300*100'}" /> <input type='button' class='btn' value='瀏覽...' /> <input type="file" name="largeImg" class="file" id="fileField" size="28"onchange="chartPicture(this.id)" /> </div>
方法一:用js進行判斷java
<script type="text/javascript"> //上傳圖片以前判斷上傳的圖片是否符合要求 function chartPicture(fileObj){ var img=new Image(); var value = document.getElementById(fileObj); if (value.files && value.files[0]) { //火狐7以上版本不能用上面的getAsDataURL()方式獲取,須要一下方式 img.src = window.URL .createObjectURL(value.files[0]); } else if(document.selection){ //IE下,使用濾鏡 value.select(); var imgSrc = document.selection.createRange().text; img.src=imgSrc; } //由於這裏只有把圖片添加到頁面後纔可獲取其高和寬 document.body.appendChild(img); img.onload = function(){ alert(img.offsetWidth); img.style.display = 'none'; }; } </script> 這種方法有其缺點,那就是在ie下有時有點很差使 方法二:java進行判斷 首先,經過struts上傳到後臺後,獲取是File文件了,那麼怎麼對它進行操做呢 BufferedImage sourceImg =ImageIO.read(file文件); System.out.println(sourceImg.getWidth()); System.out.println(sourceImg.getHeight()); 這個所謂的缺點,那就是不怎麼及時了,只能等你提交後,纔可進行判斷,不怎麼及時