解决办法如下:
1.用ASCII码替换百分号和与符号
var remark = $(\"#remark\").val(); remark.replaceAll(\"ASCII69\",\"%\").replaceAll(\"ASCII70\",\"&\"); //展示时需要对原先替换的进行还原展示 remark.replaceAll(\"%\",\"ASCII69\").replaceAll(\"&\",\"ASCII70\");
2.在jquery中用编码转换来实现百分号的保存
//encodeURI() 函数可把字符串作为 URI 进行编码。 //对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() //函数是不会进行转义的: , / ? : @ & = + $ var uri=\"my test.php?name=%fff&car=saab#&\"; document.write(encodeURI(uri)+ \"<br>\");
结果为:
my%20test.php?name=%25fff&car=saab#&
这里将百分号编码为 %25
//decodeURI() 函数可对 encodeURI() 函数编码过的 URI 进行解码。 //提示: 使用 encodeURI() 函数可以对 URI 进行编码。 encodeURIComponent() 函数可把字符串作为 URI 组件进行编码。
该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: – _ . ! ~ * \’ ( ) 。
其他字符(比如 :;/?:@&=+$,# 这些用于分隔 URI 组件的标点符号),都是由一个或多个十六进制的转义序列替换的。
var uri=\"http://w3cschool.cn/my test.php?name=ståle&car=saab\"; document.write(encodeURIComponent(uri)); //结果展示: http%3A%2F%2Fw3cschool.cn%2Fmy %20test.php%3Fname%3Dst%C3%A5le%26car%3Dsaab //decodeURIComponent() 函数可对 encodeURIComponent() // 函数编码的 URI 进行解码。 //提示:使用 encodeURIComponent() 方法可以对 URI 进行编码。
以上所述是小编给大家介绍的js input输入百分号保存数据库失败的解决方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!
© 版权声明
THE END
暂无评论内容