我正在使用jQuery的$ .post调用,它返回一个带有引号的字符串。引号是由json_encode行添加的。如何阻止添加引号?我是否在$ .post调用中缺少某些内容?
$.post("getSale.php", function(data) {
console.log('data = '+data); // is showing the data with double quotes
}, 'json');
我正在使用jQuery的$ .post调用,它返回一个带有引号的字符串。引号是由json_encode行添加的。如何阻止添加引号?我是否在$ .post调用中缺少某些内容?
$.post("getSale.php", function(data) {
console.log('data = '+data); // is showing the data with double quotes
}, 'json');
json_encode()
返回一个字符串从json_encode()
文档:
Returns a string containing the JSON representation of value.
你需要调用JSON.parse()
上data
,这将解析JSON字符串,并把它变成一个对象:
$.post("getSale.php", function(data) {
data = JSON.parse(data);
console.log('data = '+data); // is showing the data with double quotes
}, 'json');
但是,由于您要在console.log()
调用中连接字符串data =
至data
,因此将记录的内容为data.toString()
,它将返回对象的字符串表示形式,它将是[object Object]
。所以,你打算在一个单独的console.log()
呼叫中登录data
。这样的事情:
$.post("getSale.php", function(data) {
data = JSON.parse(data);
console.log('data = '); // is showing the data with double quotes
console.log(data);
}, 'json');
你试图用你接收的数据做什么?如果您只是试图获取JSON消息的特定键,即“{"name":"sam"}"
”中的“名称”(假设您有JSON对象而不是JSON数组),则无论使用双精度型还是双精度型,都可以使用data.name
。报价
我试图插入一个HTML标记中的数据,一旦我把它拿回来。 – Catfish 2010-11-24 03:44:43
我正在使用json_encode(array())来返回我的php文件中的值,是不是? – Catfish 2010-11-24 03:45:18