我怎样才能避免'&'在javascript的POST中的符号

时间:2011-12-16 13:46:42

标签: javascript html ajax

我正在通过POST发送HTML并且'&'正在弄乱它,我该如何避免它?尝试更换&与\&,没有用。

有关更多信息:我正在尝试在内部项目中使用电子邮件模板,而且正在调整POST,我正在使用它将它们从javascript发送到php。

以下代码:

emailcontinut = CKEDITOR.instances['emailContinut'].getData();
var parametri = "Trimite="+trimite + "&codc="+codc + "&emailSubiect="+emailsubiect + "&emailContinut="+emailcontinut + "&adact="+adact + "&sid="+Math.random();


xmlhttp_email_actiune.open("POST",url,true);
xmlhttp_email_actiune.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp_email_actiune.setRequestHeader("Content-length", parametri.length);
xmlhttp_email_actiune.setRequestHeader("Connection", "close");
xmlhttp_email_actiune.send(parametri);

当我在目标PHP中回显$ _POST ['emailContinut']时,它会在第一个'&'处停止在& nbsp

解决方案只是

emailcontinut =  escape(emailcontinut); 

在javascript中然后在php中使用stripslashes()来解码它。感谢。

3 个答案:

答案 0 :(得分:3)

您需要对内容进行网址编码和/或HTML编码,具体取决于您实际执行的操作。

答案 1 :(得分:1)

您只需要使用转义JS函数对URL进行编码,并使用编码的URL发送ajax调用,例如:

var url = "http://127.0.0.1/ajaxResource.php?p1=100&p2=2000&p3=name";
url = escape(url); //Now the user is encoded use this url in ajax

JP

答案 2 :(得分:0)

尝试用&

替换它们

适用于HTML

中的href-和src-attributes