摘要:最近編寫了一個上傳文件的功能,支持所以選用了。但是在測試時,產(chǎn)生了麻煩的問題,在這里記錄一下。頭文件問題,股務(wù)端接口要返回文件。在下面,會彈出下載的問題。代碼如下上面是我下載的文件列表。其次,是在配置方面上面主要是在配置方面。
頭文件問題,最近編寫了一個上傳文件的功能,支持ie9+.所以選用了 jQuery-File-Upload。但是在IE9測試時,產(chǎn)生了麻煩的問題,在這里記錄一下。
股務(wù)端接口要返回text/html文件。因為ie9不認(rèn)識application/json格式的。在IE9下面,會彈出下載的問題。
在我修改過程中,后端同學(xué)說改了,然后我很信任它。然后改過后,還是有下載的問題。不知道所措,最后發(fā)現(xiàn)是后端沒有修改成功。。。
JS代碼設(shè)置部分。首先,在文件的加載上。代碼如下
const fileList = ((pathFix) => {return [ `${pathFix}/jqueryuploader/vendor/jquery.ui.widget.js`, `${pathFix}/jqueryuploader/jquery.fileupload.js`, ...(laterIE ? [`${pathFix}/jqueryuploader/cors/jquery.xdr-transport.js`] : []), `${pathFix}/jqueryuploader/jquery.iframe-transport.js`, ]; })("/static/static");
上面是我下載的文件列表。在ie9下面,多加載了一個jquery.xdr-transport.js文件。
其次,是在配置方面
$(fupload).fileupload({ url: server.dataPoiUpload, dataType: "json", autoUpload: true, formData: {geotable_id: geotableId, sn: mStore.getSN(), user: mStore.getUsername()}, sequentialUploads: true, done: function(e, cdata) { var result = cdata.result; const data = ((rdata) => { return typeof rdata === "object" ? rdata : JSON.parse(rdata); })(result); }, progressall: function(e, data) { console.log("update progressall"); var progress = parseInt(data.loaded / data.total * 100, 10); self.setState({ "progress": progress }); }, change: function() { self.setState({ status: "updating", uploadBtn: false }) console.log("upload change"); }, success: function(cdata, status, object) { const data = ((cd) => { return typeof cd === "object" ? cd : JSON.parse(cd); })(cdata); } }).error(function() { console.log(arguments, "error"); });
上面主要是在配置方面。主要注意幾點:1,設(shè)置dataType. 2, success返回值時,chrome與ie返回值格式不一樣。這里做一判斷
以上是主要的關(guān)鍵點。留做總結(jié),希望能幫助也在使用此組件的人
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/84833.html
摘要:由于瀏覽器同源策略,凡是發(fā)送請求的協(xié)議域名端口三者之間任意一與當(dāng)前頁面地址不同即為跨域最近項目要兼容,找了一些資料,實踐了一下,現(xiàn)在總結(jié)一下,避免以后踩坑。解決方案,微軟在和下給我們提供了來進(jìn)行解決跨域問題,官方的文檔可以在這里看到。 由于瀏覽器同源策略,凡是發(fā)送請求url的協(xié)議、域名、端口三者之間任意一與當(dāng)前頁面地址不同即為跨域 最近項目要兼容IE9,找了一些資料,實踐了一下,現(xiàn)在總...
摘要:本文將針對使用生態(tài)開發(fā)完成的網(wǎng)站,以版本為基礎(chǔ)兼容目標(biāo),實現(xiàn)全功能正常使用的全面兼容解決方案。這樣做的目的,是逐步減少全局性方法,使得語言逐步模塊化。此外,使用這個,一旦頁面不處于瀏覽器的當(dāng)前標(biāo)簽,就會自動停止刷新。 前言 背景情況 vue - 2.5.11 vue-cli 使用模板 webpack-simple http請求:axios Vue 官方對于 ie 瀏覽器版本兼容情...
摘要:指向后一個同輩元素的元素版。復(fù)制后返回的節(jié)點副本屬于文檔所有,但并沒有為它指定父節(jié)點。生成結(jié)束秒鐘后,將個顛倒過來,內(nèi)容也就變成了。 之四:關(guān)于原生dom操作 下周被內(nèi)推了百度糯米的面試,決定趁這個周末惡補下原生的js基礎(chǔ),感覺自己被jQuery慣壞了吧!前兩天聽首頁部同組的大牛師兄說:其實還是js基礎(chǔ)重要,不要盲目追求新技術(shù),基礎(chǔ)練好了就像把自己的內(nèi)功修煉好,內(nèi)功扎實才能修煉好武功秘...
摘要:以的幾款瀏覽器為例,我們優(yōu)先通過內(nèi)核渲染主流的網(wǎng)站,只有小量的網(wǎng)站通過內(nèi)核渲染,以保證頁面兼容。盡管我們努力通過用戶反饋代碼標(biāo)簽智能判斷技術(shù)提高瀏覽器的自動切核準(zhǔn)確率。目前該功能已經(jīng)在所有的安全瀏覽器實現(xiàn)。 原文地址 (我比較納悶,360的兼容模式這么狗屎,為什么還有存在的必要性……) 由于眾所周知的情況,國內(nèi)的主流瀏覽器都是雙核瀏覽器:基于Webkit內(nèi)核用于常用網(wǎng)站的高速瀏覽。...
摘要:語義化語義化是指通過標(biāo)記表示頁面包含的信息,包含了標(biāo)簽的語義化和命名的語義化。兼容性為,為鼠標(biāo)移入狀態(tài)的元素,兼容性標(biāo)簽,所有元素選擇不符合的元素。解決辦法使用控制間距。 web語義化 web語義化是指通過HTML標(biāo)記表示頁面包含的信息,包含了HTML標(biāo)簽的語義化和css命名的語義化。HTML標(biāo)簽的語義化是指:通過使用包含語義的標(biāo)簽(如h1-h6)恰當(dāng)?shù)乇硎疚臋n結(jié)構(gòu)css命名的語義化是...
閱讀 3273·2021-09-30 09:47
閱讀 2290·2021-09-10 10:51
閱讀 1889·2021-09-08 09:36
閱讀 2926·2019-08-30 12:56
閱讀 3027·2019-08-30 11:16
閱讀 2622·2019-08-29 16:40
閱讀 2994·2019-08-29 15:25
閱讀 1632·2019-08-29 11:02