jquery ajax html特殊字符

时间:2013-07-21 00:22:10

标签: php jquery

的javascript

var a="sadahdka sarr    &nbsp"

jQuery.ajax(
                        {
                            type:"POST",
                            url:"function/postbai.php",
                            data:"a="+a,
                            success:function(html)
                            {
                                alert(html);
                            }
                        });

之前

var a="sadahdka sarr    &nbsp"

在 为什么

$_POST['a']="sadahdka sarr"

帮助 jquery ajax html特殊字符

3 个答案:

答案 0 :(得分:3)

因为&是查询字符串中的字段分隔符。如果您想保留&,请确保encodeURIComponent(a);

答案 1 :(得分:1)

您的字符串无效作为查询字符串,您必须使用encodeURIComponent对其进行编码,或者让jQuery通过传递对象为您执行此操作:

var data = {a :"sadahdka sarr    &nbsp"};

jQuery.ajax({
    type: "POST",
    url: "function/postbai.php",
    data: data
}).done(function (html) {
    alert(html);
});

答案 2 :(得分:0)

在将字符串发送到服务器之前将其转义并在PHP中解码。

JS:

data : "a="+escape(a);

PHP:

urldecode($_POST['a']);