js input输入百分号保存数据库失败的解决方法

前端之家收集整理的这篇文章主要介绍了js input输入百分号保存数据库失败的解决方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

解决办法如下:

1.用ASCII码替换百分号和与符号

2.在jquery中用编码转换来实现百分号的保存

函数可把字符串作为 URI 进行编码。 //对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() //函数是不会进行转义的:,/ ? : @ & = + $ var uri="my test.PHP?name=%fff&car=saab#&"; document.write(encodeURI(uri)+ "
");

结果为:

my%20test.PHP?name=%25fff&car=saab#&

这里将百分号编码为 %25

函数可对 encodeURI() 函数编码过的 URI 进行解码。 //提示: 使用 encodeURI() 函数可以对 URI 进行编码。 encodeURIComponent() 函数可把字符串作为 URI 组件进行编码。

方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。

其他字符(比如 :;/?:@&=+$,# 这些用于分隔 URI 组件的标点符号),都是由一个或多个十六进制的转义序列替换的。

PHP?name=ståle&car=saab"; document.write(encodeURIComponent(uri)); //结果展示: http%3A%2F%2Fjb51.cc%2Fmy %20test.PHP%3Fname%3Dst%C3%A5le%26car%3Dsaab //decodeURIComponent() 函数可对 encodeURIComponent() // 函数编码的 URI 进行解码。 //提示:使用 encodeURIComponent() 方法可以对 URI 进行编码。

总结

以上所述是小编给大家介绍的js input输入百分号保存数据库失败的解决方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

猜你在找的JavaScript相关文章