先說IE9,點擊上傳后,瀏覽器會提示下載內容。
原因:IE9及以下上傳文件的響應頭的contentType 如果是json,瀏覽器會以為是文件下載。
處理方法:找后台GG,把contentType改為text/html.
再修改done方法,獲得地址
done: function(e, data){ var result = data.result[0].body ? data.result[0].body.innerHTML : data.result; result = JSON.parse(result); /* 你自己的代碼*/ }
再說IE8,點擊上傳后,出現文件選擇框,但是點擊確認后,瀏覽器不會發送ajax請求。
原因:IE8為了安全考慮,只能通過直接點擊<input type="file">來上傳文件。而我的做法是,隱藏input,通過另外一個按鈕,來觸發input的click事件。
處理方法:把另一個按鈕外面套一個label,設置for="",關聯input。
注意:input依然不能設置成display:none,不然IE8還是不認。所以我的做法是把input的寬高都設置成1px ,透明度設為0。或者設置z-index,把它置於最底層,但是這個方法我還沒實踐過。
