从php将json解析为javascript时出现问题
这是我的示例代码:
//function
MethodAjax = function (wsFile, param) {
return $.ajax({
type: "POST",
dataType: "json",
url: '../proses/' + wsFile + ".proses.php",
data: 'param='+param,
error: function (msg) {
return;
},
});
};
//call function
$(document).ready(function() {
$('#getproduk').click(function(){
var param = {
ProdukId : '1',
ProdukName : 'test'
};
CallMethodWithAjax('try', JSON.stringify(param)).done(function(data){
$data = JSON && JSON.parse(data) || $.parseJSON(data);
});
});
//Simple Php code
<?php
$data = $_POST['param'];
$data = (json_decode($data));
$data1['name'] = $data->ProdukName;
$data1['id'] = $data->ProdukId;
$data1['test'] = 'test';
echo json_encode($data1);
?>
//post, response and error at console
response : {"name":"test","id":"1","test":"test"}
post : param {"ProdukId":"1","ProdukName":"test"}
error : SyntaxError: JSON.parse: unexpected character at line 1 column 2 of the JSON data
如何解决这个问题,我尝试了在SO和google上找到的解决方案,但仍然无法解决此问题
请有人帮忙
谢谢
如果响应为JSON,则jQuery的$
.ajax()
函数将生成一个JavaScript对象,因此,我认为您看到的错误是尝试解析JavaScript对象而不是您期望的字符串的结果。在提供给该done
函数的回调中,检查data
并发现它是一个对象,不需要JSON.parse
结果。
问题内容: 我花了6个小时以上的时间在代码中找到异常或特殊字符,但找不到。我在这里检查了所有类似的消息。 我正在发送带有巨大弹出窗口的表单。首先,我使用内联弹出窗口打开表单,而不是将所有输入发送到main.js进行验证。 所以,我只需要一只第三只眼。 我有:,, 这是代码 形成 JS / AJAX PHP-register.php 错误消息在这里 JSON输出 Chrome控制台: Firefox
注意:我已经查看了文件的十六进制,没有什么不合适的
问题内容: 我的代码有什么问题?我在测试服务器上运行了代码,并且代码可以正常工作,但是当我将其上传到生产服务器时,我得到了 这是我的代码 问题答案: 该错误很可能是由于 您可能会使用不支持闭包的PHP 5.2或更早版本。您可以找出正在使用的PHP版本 。 您可能需要升级到PHP 5.3+,或者使用或编写静态函数并将其作为回调传递。 这是最后一个选项的示例,使用一个简单的类来存储状态:
问题内容: 我在使用json.loads转换为dict对象时遇到麻烦,我无法弄清楚我在做什么错。我得到的确切错误是 这是我的代码: 我很确定错误发生在第二行到最后一行 但我不知道该如何解决。任何意见,将不胜感激。 问题答案: 将json字符串加载到python中,将python转储到json字符串中,例如: 所以那行是不正确的,因为您正在尝试使用python ,并期望应该有一个有效的。 因此,如果
问题内容: 我从Web服务获取JSon数据,示例数据如下: 当我尝试将其转换时,它将引发错误,我这样做是: 我的班级是: LogCat说: com.google.gson.JsonSyntaxException:java.lang.IllegalStateException:预期为BEGIN_OBJECT,但在第1行第2列为BEGIN_ARRAY 问题答案: 错误说明发生了什么问题…您返回的是数组
我是android编程新手。我有一个类,在这个类中,修改API调用是为了解析和显示JSON文件中的几个属性。但我得到: Java语言lang.IllegalStateException:应为BEGIN\u对象,但在第2行第1列为字符串 好心帮忙。我搜索了答案,但没有发现JSON响应有任何问题。发布了我的JSON响应和JAVA类: JSON响应: JAVA文件: 模型类: