/ AJAX jQuery में JSON स्ट्रिंग रिस्पांस लाने के दौरान "ऑपरेटर 'में" उपयोग नहीं कर सकता है "- php, jquery, json, ajax, laravel

AJAX jQuery में JSON स्ट्रिंग प्रतिक्रिया प्राप्त करते समय "ऑपरेटर .." में "उपयोग नहीं कर सकता .. - php, jquery, json, AJAX, laravel

मैं लार्वा में एक JSON सरणी बनाने की कोशिश कर रहा हूँ औरफिर इसे अजाक्स के माध्यम से लाने की कोशिश कर रहा है। यह JSON बनाता है, लेकिन इसे jquery से प्राप्त करते समय समस्याएं पैदा कर रहा है। मैं वहाँ कुंजी-मूल्य जोड़ी लाने में सक्षम नहीं हूं।

यहाँ Laravel (PHP) में JSON सरणी बनाने के लिए कोड है:

foreach ($userIds as &$userId) {
$data[] = json_encode(array("Id"=>$id,"Name"=>$name,"HashId"=>$hashId));
}
return $data;

पुनश्च। $data इस तरह की प्रतिक्रिया दिखाता है:

[
"{"Id":"111","Name":"abc","HashId":"I1J6EDO"}",
"{"Id":"112","Name":"xyz","HashId":"MDLYW9K"}"
]

इस तरह से मैं "अजाक्स पुनः कॉल करने की कोशिश कर रहा हूँ:

$.ajax({
type: "GET",
url: "/url/goes/here",
dataType: "json",
success: function(data) {
$.each(data, function(key, value){
$.each(value, function(key1, value1){
console.log(value1);
});
});
}
});

कंसोल त्रुटि दिखाता है: Uncaught TypeError: Cannot use "in" operator to search for..

कुछ खोज के बाद, मैं समझ गया कि शायद प्रतिक्रिया स्ट्रिंग JSON सरणी है न कि JSON सरणी या obj (जैसा कि अपेक्षित है)

मुझे कुंजी-मूल्य जोड़ी लाने में मदद चाहिए। मैं जिस तरह से JSON को लार्वा में एनकोड करने के तरीके को बदलने के लिए खुला हूं। कृपया JSON और AJAX दोनों के लिए नए के रूप में मदद करें

उत्तर:

जवाब के लिए 2 № 1

सरणियों के निर्माण के बाद आपको सब कुछ सांकेतिक शब्दों में बदलना चाहिए

$data = array();

foreach ($userIds as $userId) {
$data[] = array("Id"=>$id,"Name"=>$name,"HashId"=>$hashId);
}
return json_encode($data);