当我试图通过jquery和ajax传递它时,删除了css代码

时间:2012-03-24 03:52:36

标签: javascript ajax jquery

我使用以下代码提交不同的值

var evalue= 'color:#d32;font-size:12px;';
jQuery.ajax({   
    type: 'get',
    url: 'save.php',
    data: 'type=epush&id=' + qid+'&evalue='+pof+'&efield='+efield,      
    beforeSend: function() {},  
    success: function() {}
});

我遇到的问题是价值需要是css代码。 所以当我使用$eval= mysql_real_escape_string($_GET['evalue']);时 剥离代码。当我使用$eval = &_GET['evalue'];时,它会剥离#符号。 我在javascript上使用var evalue来简化理解。

1 个答案:

答案 0 :(得分:2)

您需要使用encodeURIComponent(param)对参数进行编码,然后在PHP中使用urldecode()

jQuery.ajax({   
    type: 'get',
    url: 'save.php',
    data: 'type=epush&id=' + encodeURIComponent(qid) 
        +'&evalue='+ encodeURIComponent(pof)
        + '&efield='+efield,      
    beforeSend: function() {},  
    success: function() {}
});

在PHP中:

urldecode($_GET['evalue']);