Javascript Ajax请求仅发布部分文本

Javascript Ajax请求仅发布部分文本,javascript,php,ajax,prototypejs,Javascript,Php,Ajax,Prototypejs,我有以下ajax脚本(prototype js),但它只是发布了部分文本 Selenium.prototype.doSaveCopyPaste = function(locator) { var element = this.page().findElement(locator); var text = jQuery(element).text(); console.log(text); var ajax = new Ajax.Request('http://copypaste.test

我有以下ajax脚本(prototype js),但它只是发布了部分文本

Selenium.prototype.doSaveCopyPaste = function(locator) {
 var element = this.page().findElement(locator);
 var text = jQuery(element).text();
 console.log(text);

var ajax = new Ajax.Request('http://copypaste.test', {
  method: 'post',
  parameters: 'report=' + text,
  processData: false,
   onSuccess: function(transport) {
    var response = transport.responseText || "no response text";
    alert("Success! \n\n" + response);
   },
   onFailure: function() { alert('Something went wrong...'); }
 });
   console.log(ajax);
 }
当我在控制台中输出
文本
时,我得到通过
定位器
传递的所有信息,例如

------------------------------------------------------------
<br>
 Header 1
<br>
------------------------------------------------------------
<br>
 Header 2
<br>
 Sub Heading: A Name
<br>
 Sub Heading 2: Another Name
<br>
Sub Heading 3: data here
<br>
etc etc for about 3000 characters

您需要在发布字符串之前对其进行编码:

...
parameters: 'report=' + encodeURIComponent(text);
...

现在,字符串中的字符可以使其无效,将其拆分为多个键值字段等。

非常感谢,您刚刚结束了一个非常长的对表调试会话:-)
...
parameters: 'report=' + encodeURIComponent(text);
...