想想你在form表单提交时,如果参数包含双引号怎么处理
想想你在form表单提交时,如果参数包含双引号怎么办
最近做了一个功能,需要用到form表单上传文件,同时(1)如果需要把输入的一段文字,如果文字中包含双引号(2)如果需要包装成json格式传到服务器,上面两种情况都涉及到双引号的问题,我试了好多次引号每次都被截断了,从双引号开始的字符都没有传到服务器,
比如我想要传递的是xxxx1"000"xxxxxx,到服务器上得到的却是xxxx1,
网上搜索了很多资料没能找到满意的答案,可能是关键字不对;
刚刚我无意当中做了这样一件事情,如下图

input的value能输入双引号吗???看看编译器的颜色就知道了,引号后面的字符都不会再解析了,所以就有截断的情况发生。
[size=medium][color=red]解决方案:
把包含双引号的字符串转换一下,'&'就可以了[/color][/size]
最近做了一个功能,需要用到form表单上传文件,同时(1)如果需要把输入的一段文字,如果文字中包含双引号(2)如果需要包装成json格式传到服务器,上面两种情况都涉及到双引号的问题,我试了好多次引号每次都被截断了,从双引号开始的字符都没有传到服务器,
比如我想要传递的是xxxx1"000"xxxxxx,到服务器上得到的却是xxxx1,
网上搜索了很多资料没能找到满意的答案,可能是关键字不对;
刚刚我无意当中做了这样一件事情,如下图
input的value能输入双引号吗???看看编译器的颜色就知道了,引号后面的字符都不会再解析了,所以就有截断的情况发生。
[size=medium][color=red]解决方案:
function htmlspecialchars (string) { string = string.replace(/&/g, '&');//这个就是双引号 string = string.replace(/"/g, '"'); string = string.replace(/'/g, "'"); string = string.replace(/</g, '<'); string = string.replace(/>/g, '>'); return string; }
把包含双引号的字符串转换一下,'&'就可以了[/color][/size]