js input輸入百分號保存數(shù)據(jù)庫失敗的解決方法
解決辦法如下:
1.用ASCII碼替換百分號和與符號
var remark = $("#remark").val();
remark.replaceAll("ASCII69","%").replaceAll("ASCII70","&");
//展示時需要對原先替換的進(jìn)行還原展示
remark.replaceAll("%","ASCII69").replaceAll("&","ASCII70");
2.在jquery中用編碼轉(zhuǎn)換來實現(xiàn)百分號的保存
//encodeURI() 函數(shù)可把字符串作為 URI 進(jìn)行編碼。 //對以下在 URI 中具有特殊含義的 ASCII 標(biāo)點符號,encodeURI() //函數(shù)是不會進(jìn)行轉(zhuǎn)義的: , / ? : @ & = + $ var uri="my test.php?name=%fff&car=saab#&"; document.write(encodeURI(uri)+ "<br>");
結(jié)果為:
my%20test.php?name=%25fff&car=saab#&
這里將百分號編碼為 %25
//decodeURI() 函數(shù)可對 encodeURI() 函數(shù)編碼過的 URI 進(jìn)行解碼。 //提示: 使用 encodeURI() 函數(shù)可以對 URI 進(jìn)行編碼。 encodeURIComponent() 函數(shù)可把字符串作為 URI 組件進(jìn)行編碼。
該方法不會對 ASCII 字母和數(shù)字進(jìn)行編碼,也不會對這些 ASCII 標(biāo)點符號進(jìn)行編碼: - _ . ! ~ * ' ( ) 。
其他字符(比如 :;/?:@&=+$,# 這些用于分隔 URI 組件的標(biāo)點符號),都是由一個或多個十六進(jìn)制的轉(zhuǎn)義序列替換的。
var uri="http://w3cschool.cn/my test.php?name=ståle&car=saab"; document.write(encodeURIComponent(uri)); //結(jié)果展示: http%3A%2F%2Fw3cschool.cn%2Fmy %20test.php%3Fname%3Dst%C3%A5le%26car%3Dsaab //decodeURIComponent() 函數(shù)可對 encodeURIComponent() // 函數(shù)編碼的 URI 進(jìn)行解碼。 //提示:使用 encodeURIComponent() 方法可以對 URI 進(jìn)行編碼。
總結(jié)
以上所述是小編給大家介紹的js input輸入百分號保存數(shù)據(jù)庫失敗的解決方法,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復(fù)大家的!
相關(guān)文章
javascript框架設(shè)計讀書筆記之字符串的擴(kuò)展和修復(fù)
本文是司徒正美的《javascript框架設(shè)計》的第三章第一節(jié)的讀書筆記,簡單介紹了javascript字符串的擴(kuò)展和修復(fù),小伙伴們參考下吧2014-12-12
js獲取當(dāng)前頁的URL與window.location.href簡單方法
下面小編就為大家?guī)硪黄猨s獲取當(dāng)前頁的URL與window.location.href簡單方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-02-02

