2013-12-09 32 views
0

該問題僅在IE < = 9中出現。其他地方的fileupload完美地工作。PrimeFaces fileUpload在IE上不起作用<= 9

我正在使用PrimeFaces版本:3.4.2。 升級到4.0不會改變任何東西。 PrimeFaces FileUpload demo

<h:form> 

      <p:fileUpload fileUploadListener="#{fileUploadBean.listener}" 
       mode="advanced" update="messages" auto="true" sizeLimit="100000" 
       allowTypes="/(\.|\/)(gif|jpe?g|png)$/" /> 

      <p:growl id="messages" showDetail="true" /> 

     </h:form> 

我甚至定義:從

我複製的代碼

<meta http-equiv="X-UA-Compatible" content="IE=8" /> 

在我的網頁它不工作,但是,FileUpload demo頁它令人驚訝的工作。

我已經注意到了這種奇怪的行爲在IE < = 9(內容長度爲0和Content-Type是不存在的 - 爲什麼?):

my page request

但PrimeFaces頁面上有(相同的瀏覽器 - IE8/9):

primefaces request

我也試圖設置enctypemultipart/form-data和(像PrimeFaces演示頁)application/x-www-form-urlencoded(這是默認設置)

我能做些什麼才能使其工作?

回答

0

我剛剛解決了它。

它沒有工作的原因是在佈局 - XHTML masterpage中包括jquery和jquery.fileupload ...但爲什麼IE < = 9沒有處理,我不知道(沒有錯誤/控制檯中的警告)。

我只是將其修改爲低於:

<o:conditionalComment if="gt IE 9"> 
    <script src="#{request.contextPath}/js/jquery.min.js"></script> 
    <script src="#{request.contextPath}/js/jquery-ui.min.js"></script> 
    <script src="#{request.contextPath}/js/jquery.fileupload.js"></script> 
</o:conditionalComment> 

現在,它的工作原理。

+0

它適用於OmniFaces @ Xeon不是我所認爲的 –

0

如果您尚未嘗試使用primefaces.UPLOADER參數,您可以嘗試一下。我不得不使用

<context-param> 
    <param-name>primefaces.UPLOADER</param-name> 
    <param-value>commons</param-value> 
</context-param> 

使它在IE8上工作。也許這對你也有幫助