我是javascript中的一个对象,并通过Jquery post方法发送它:
reservation={};
count=0;
$(".reservation").each(function() {
reservation[this.id]=jQuery(this).val();
count++;
if (count==jQuery(".reservation").length)
{
reservationString=JSON.stringify(reservation);
$.post("helper.php", {reservation: reservationString}) .done(function(data) {
“helper.php”文件获取数据,但是quotatian标记都被转义,所以当我尝试解码它时,我得到一个json错误,错误代码为4。
这是helper.php文件:
$reservation=$_REQUEST['reservation'];
echo $reservation . "\n";
$reservation=json_decode(html_entity_decode($reservation));
我尝试在javascript中提示alertString,字符串没有在那里转义,所以很可能jQuery post方法为我转义字符串。可能是什么问题,你们可以建议一个解决方案吗?
其他信息: 这是我在javascript中提醒字符串化对象后得到的结果:
{"test":"bubub","Domain":"online","Type":"banner","s2id_CompanyId":"","CompanyId":"-","ContactPersonId":"0"}
这是我在回显php中的数据后得到的结果:
{\"test\":\"bubub\",\"Domain\":\"online\",\"Type\":\"banner\",\"s2id_CompanyId\":\"\",\"CompanyId\":\"-\",\"ContactPersonId\":\"0\"}
答案 0 :(得分:0)
这应该有效:
$reservation=$_REQUEST['reservation'];
echo $reservation . "\n";
$reservation=stripslashes(json_decode(html_entity_decode($reservation));