2013-03-13 70 views
2
$('<form method="post" action="login/makeLogin"><input type="hidden" name="fbphoto" value="'+image + 
        '"><input type="hidden" name="fbname" value="'+response.first_name +'"><input type="hidden" name="fbemail" value="'+response.email +'"><input type="hidden" name="fbid" value="'+response.id+ 
        '"><input type="hidden" name="fbsurname" value="'+response.last_name +'"><input type="hidden" name="fbfriends" value="'+json +'"></form>').appendTo('body') 

我使用javascript动态创建了此表单。但是当我尝试发送这个表单到一个php函数时,当我尝试访问fbfriends属性时,它会返回false,其余值的工作正常。 fbfriends的值是一个包含字符串JSON,我开始使用其中:通过表格发送json到php

var json=JSON.stringify(response.friends); 

如果我不字符串化的JSON我得到一个字符串[对象对象]在PHP函数检索值时。我如何通过表单发送json。

+0

你有回答你的问题使用'JSON.stringify',否则JSON被转换为字符串'toString'方法 – jcubic 2013-03-13 09:32:24

+0

当我使用stringify – 2013-03-13 09:33:28

+2

时,你可以尝试转义引号'JSON.stringify(response。朋友).replace(/“/ g,'\\”');' – jcubic 2013-03-13 09:34:30

回答

1

您的表单只包含隐藏项目。为什么不直接通过$ .ajax发布响应值?