簡體   English   中英

Jsp中的使用條件

[英]How use conditions in Jsp <p:fileUpload

我需要檢查上傳文件的大小,類型,並將上傳的文件名設置為fileUpload值標簽。
我在uploadController中為它們編寫了簡單的函數,需要調用它們以檢查文件的大小和類型。 是否有建議的方法來執行此文件驗證?

 <h:form enctype="multipart/form-data"> <p:growl id="messages" showDetail="true" /> <p:fileUpload // need set value after validating the file using BannerUpload.isPng() BannerUpload.checkMaxSize() value="#{BannerUpload.file}" mode="simple" skinSimple="true" /> <br/> <ui:fragment rendered="#{not empty BannerUpload.file}"> <img src="data:image/png;base64,#{BannerUpload.imageContentsAsBase64}" alt="" /> </ui:fragment> <br/> <p:commandButton action="#{BannerUpload.preview}" ajax="false" value="Preview" /> <br/> <p:commandButton value="Submit" ajax="false" action="#{BannerUpload.upload}" disabled="false" /> </h:form> 

檢查是否是圖像? 或圖像大小可以在瀏覽器端完成,在這里我找到了一個鏈接,例如單擊此處 ,您也可以使用控制器,但是對於大文件和示例javascript代碼來說效果更好

function GetFileSize(fileid) {
try {
    var fileSize = 0;
    // for IE
    if(checkIE()) { //we could use this $.browser.msie but since it's deprecated, we'll use this function
        // before making an object of ActiveXObject, 
        // please make sure ActiveX is enabled in your IE browser
        var objFSO = new ActiveXObject("Scripting.FileSystemObject");
        var filePath = $("#" + fileid)[0].value;
        var objFile = objFSO.getFile(filePath);
        var fileSize = objFile.size; //size in b
        fileSize = fileSize / 1048576; //size in mb 
    }
    // for FF, Safari, Opeara and Others
    else {
        fileSize = $("#" + fileid)[0].files[0].size //size in b
        fileSize = fileSize / 1048576; //size in mb 
    }
    alert("Uploaded File Size is" + fileSize + "MB");
}
catch (e) {
    alert("Error is :" + e);
}

}

要么

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM