Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/477.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何替换`&;`在POST';s值参数?_Javascript_Jquery_Html - Fatal编程技术网

Javascript 如何替换`&;`在POST';s值参数?

Javascript 如何替换`&;`在POST';s值参数?,javascript,jquery,html,Javascript,Jquery,Html,这是我在textarea中使用tinyMCE得到的: helloóóó 我使用tinyMCE从textarea获取内容,并将其解析为当前字符串: 动作=更新和范围=设置和id=内容\u主页和内容=你好 当我通过POST将其发送到服务器时,我的内容值在hello之后结束,此时有helloó 我能解决这个问题吗?有什么特别的方法吗 以下是我构建字符串的方式: var textarea = $(this).parent().find('.tinymce').first() if (textarea.

这是我在
textarea
中使用
tinyMCE
得到的:

helloóóó
我使用
tinyMCE
从textarea获取内容,并将其解析为当前字符串: 动作=更新和范围=设置和id=内容\u主页和内容=你好

当我通过
POST
将其发送到服务器时,我的
内容
值在
hello
之后结束,此时有
helloó

我能解决这个问题吗?有什么特别的方法吗

以下是我构建字符串的方式:

var textarea = $(this).parent().find('.tinymce').first()
if (textarea.length) {

    var content = tinyMCE.get(textarea.attr('id')).getContent();
    data += '&content=' + content;
}

$.ajax({
    type : "POST",
    url : url,
    data : data,
    dataType : "json",
    success : function(back) {}
});

您需要对这些值进行URL编码。尝试使用encodeURIComponent()方法


您需要对值进行URL编码。尝试使用encodeURIComponent()方法


ó
的html编码版本
。你可以用密码破译它

我不知道为什么数据会是HTML编码的,但这似乎是一个错误。我希望它是URL编码的。当您收到数据时,它将为您解码。至少它需要URL编码一次,HTML编码是可选的

// url encoded:
action=update&range=settings&id=content_home&content=hello%C3%B3%C3%B3%C3%B3
// url encoded and html encoded:
action=update&range=settings&id=content_home&content=hello%26oacute%3B%26oacute%3B%26oacute%3B

ó
的html编码版本
。你可以用密码破译它

我不知道为什么数据会是HTML编码的,但这似乎是一个错误。我希望它是URL编码的。当您收到数据时,它将为您解码。至少它需要URL编码一次,HTML编码是可选的

// url encoded:
action=update&range=settings&id=content_home&content=hello%C3%B3%C3%B3%C3%B3
// url encoded and html encoded:
action=update&range=settings&id=content_home&content=hello%26oacute%3B%26oacute%3B%26oacute%3B

正如另一个答案指出的,您需要使用encodeURIComponent

data += '&content=' + encodeURIComponent(content);
但更好的选择是将数据放入对象中,让jQuery为您处理

var data = {
   action : "update",
   range : "settings"
   /* your other fields */
};
data.content = content;

$.ajax({
    type : "POST",
    url : url,
    data : data,
    dataType : "json",
    success : function(back) {}
});

正如另一个答案指出的,您需要使用encodeURIComponent

data += '&content=' + encodeURIComponent(content);
但更好的选择是将数据放入对象中,让jQuery为您处理

var data = {
   action : "update",
   range : "settings"
   /* your other fields */
};
data.content = content;

$.ajax({
    type : "POST",
    url : url,
    data : data,
    dataType : "json",
    success : function(back) {}
});

您想在服务器上接收HTML(helloó;ó;ó;ó)还是文本(helloóóó)?您是如何获取内容参数的值的?是的,可能有包括html标记在内的所有内容。。。我正在使用
$\u POST
在服务器上获取值。您是如何构建字符串的?您需要显示发送参数的代码,以便我们可以看到您的错误。@epascarello更新了问题您希望在服务器上接收HTML(helloó;ó;ó;ó)还是文本(helloó)?您是如何获取内容参数的值的?是的,可能有包括html标记在内的所有内容。。。我正在使用
$\u POST
在服务器上获取值。您是如何构建字符串的?您需要显示发送参数的代码,这样我们才能看到您做错了什么。@epascarello更新了问题编辑器中的问题这不是错误行为。内容是html编码的,因为它来自WYSIWYG编辑器。OP就是创建URL的那个。。。他必须自己使用
EncoreuricComponent
对内容进行编码<代码>URL+='&content='+encodeURIComponent(contentFromTinyMce)EncoreuricComponent对内容进行编码<代码>URL+='&content='+encodeURIComponent(contentFromTinyMce)