我有一个页面,用户将编写代码(用编程语言)。代码可以很长(超过2000个字符),并且可以包含任何类型的字符。当他按下发送按钮时,代码将被发送(使用javascript ajax)到服务器上的脚本文件等。
目前我正在使用它来发送带有ajax的代码:
jxobj.open('POST', 'www.my-website.com/my_script.php', true);
jxobj.send('code=' + code);
但如果代码包含某些字符,例如&
,则code
的值将被分成许多部分,我无法在我的脚本文件中检索它。
有没有办法在没有字符串连接的情况下发送ajax请求?我想尽可能使用javascript,谢谢。
答案 0 :(得分:1)
数据格式为well documented,标准JavaScript encodeURIComponent
函数会为其编码数据。
jxobj.send('code=' + encodeURIComponent(code));
有没有办法在没有字符串连接的情况下发送ajax请求?
不是真的。 send方法接受一个字符串,因此您必须使用某种机制或其他机制来构建字符串。您可以使用(例如)数组和连接来实现它,但它仍然归结为相同的基本原则。