gpt4 book ai didi

javascript - JSON/JQUERY/JS - 从对象访问属性

转载 作者:行者123 更新时间:2023-11-28 18:00:13 25 4
gpt4 key购买 nike

从我的 PHP 处理文件中,我收到一个 object ([object Object]),我想通过 data[ 等调用来访问它的内容0].errors 等,但所有尝试对我来说似乎都失败了。

我怎样才能实现这一目标?

该对象如下所示:

" Array
(
[success] =>
[errors] => Array
(
[companyname] => Company name is required and must have 50 characters at most.
[logo1] => Logo is required.
[investment] => First investment amount is required.
[investment1] => Investment value must be an integer.
[payment] => Basic wage is required.
[payment1] => Payment value must be an integer.
[companytype] => Company type is required.
[companytype2] => Something is wrong with your company type.
)

)
"

我必须在控制台 div 中显示这些错误,以向用户展示他做错了什么。

编辑:

这正是我在 console.log(data) 时得到的结果: consolelog

这也是我的 AJAX 请求,以使一切变得清晰。

        $.ajax({
type : 'POST',
url : 'processcreatecompany.php',
data : formData,
dataType : 'json',
contentType: false,
processData: false,
encode : true
}).done(function(data) {

console.log(data);
}).fail(function(data) {

console.log(data);

})

最佳答案

正如预期的那样,问题出在 php 部分......你正在做 print_r给出该输出的对象不是 json

你应该使用json_encode返回 $data对象/数组,所以而不是

print_r($data['success']);
print_r($data['errors']);

您应该有(您还应该添加内容类型 header )

header('Content-Type: application/json');
echo json_encode($data);

稍后编辑:如果没有 header ,您通常会得到 text/plain 的响应在data.responseText ,如您的屏幕截图所示,并且您必须“手动”进行 JSON 解析。添加 header 使 jQuery 自动进行解析,并且您将在 data.response<something I dont recall now> 中将响应作为对象获得。

关于javascript - JSON/JQUERY/JS - 从对象访问属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43646338/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com