自打入了開(kāi)發(fā)這一行以來(lái),調(diào)試工具從火狐換成了谷歌。用了三個(gè)月的火狐,三年多的谷歌,非常很特別的得心應(yīng)手,但是由于換了一個(gè)公司,公司不屬于軟件公司,我也只是做公司內(nèi)部的軟件,所以就遇到了IE瀏覽器,前前后后一個(gè)多月摔進(jìn)坑里四次。下面就講第一個(gè)坑。
好了上面都是廢話(huà),下面講一下我遇到的問(wèn)題,以及解決問(wèn)題的方法,給遇到這個(gè)問(wèn)題正在不知所措得你,也給健忘的我。
點(diǎn)擊按鈕,然后打開(kāi)頁(yè)面,代碼如下:
$(".bmjf").on("click",function(){
var department_name=this.getAttribute("name");//研發(fā)部
var url=$webURI + "/web/home/toDepart.action?departName="+department_name;
window.location.href=url;
});
如果項(xiàng)目運(yùn)行在火狐或者谷歌瀏覽器,都是正常的,但是,運(yùn)行在IE11瀏覽器,就報(bào)400,報(bào)錯(cuò)如下圖

圖片1.png
后來(lái)查資料發(fā)現(xiàn),是因?yàn)槲覀鲄⒌臅r(shí)候帶了中文字符,而ie對(duì)中文字符是有限制的,所以不成功,而要解決這個(gè)問(wèn)題就需要轉(zhuǎn)碼,把要傳的中文參數(shù)用encodeURI(jQuery方法,調(diào)用的話(huà)需要引入jQuery文件)方法給轉(zhuǎn)一下碼就ok。
也就是把department_name轉(zhuǎn)一下碼,改為encodeURI(department_name)
var department_name=encodeURI(this.getAttribute("name"));//研發(fā)部
改完以后IE11運(yùn)行就正常啦~~~
下面是修改后的代碼
$(".bmjf").on("click",function(){
var department_name=this.getAttribute("name");//研發(fā)部
var url=$webURI + "/web/home/toDepart.action?departName="+encodeURI(department_name);
window.location.href=url;
});