EDIT मैंने jQuery दस्तावेज़ों की जांच की और जेसन डेटाटाइप निर्दिष्ट $ .ajax का उपयोग करके एक मूल्यांकन जावास्क्रिप्ट ऑब्जेक्ट देता है, इसलिए eval() यहां जवाब नहीं है। मुझे पता था कि वैसे भी, क्योंकि मैं एकल JSON ऑब्जेक्ट्स को पार्स करने में सक्षम हूं, सिर्फ सरणी नहीं। समस्या $ है। उनके माध्यम से मेरे रास्ते में प्रवेश करें :)jQuery में JSON सरणी का विश्लेषण कैसे करें?
मैंने पत्र में jQuery में JSON सरणी को पार्स करने के लिए वाक्यविन्यास का पालन किया है, लेकिन यह किसी कारण से काम नहीं करता है। मैं $ .ajax का उपयोग करके सरणी ला रहा हूं, सही डेटाटाइप निर्दिष्ट किया है, और फायरबग में देख सकता है कि मेरी PHP स्क्रिप्ट से प्रतिक्रिया [] है। फिर भी जब मैं सरणी के माध्यम से पुन: प्रयास करने के लिए $ .each का उपयोग करने का प्रयास करता हूं, तो जब मैं कंसोल करने की कोशिश करता हूं तो मुझे सभी अनिर्धारित मान मिलते हैं। सरणी के विभिन्न हिस्सों को लॉग इन करें। यह वह स्थान है, जहां मेरे PHP स्क्रिप्ट बनाता है और सरणी encodes:
if(mysqli_num_rows($new_res) > 0) {
$messages = array();
while($message_data = mysqli_fetch_assoc($query_res)) {
$message = array(
'poster' => $message_data['poster'],
'message' => $message_data['message'],
'time' => $message_data['time']
);
$messages[] = $message;
}
echo json_encode($messages);
} else if(mysqli_num_rows($new_res) == 0) {
$message = array(
'poster' => '',
'message' => 'No messages!',
'time' => 1
);
echo json_encode($message);
}
और यहाँ यह पार्स करने के लिए मेरे प्रयास है:
var logged_in = '<?php echo $logged_in; ?>';
var poster = '<?php echo $_SESSION["poster"];?>';
$.ajax({
url: 'do_chat.php5',
type: 'post',
data: ({'poster':poster,'logged_in':logged_in}),
dataType: 'json',
success: function(data) {
$.each(data, function(messageIndex, message) {
console.log(parseInt($('#chatWindow :last-child > span').html())+' '+message['time']);
if((parseInt(message['time']) > parseInt($('#chatWindow :last-child > span').html()))) {
$('#chatWindow').append('<div class="poster">'+message['poster']+'</div><div class="message"><span>'+message['time']+'</span>'+message['message']+'</div>');
}
});
}
});
$ .प्रत्येक समारोह के बिना
मैं सफलतापूर्वक एक JSON ऑब्जेक्ट को पार्स करने में सक्षम हूँ , लेकिन एक सरणी नहीं है। यह JSON और $ .each के साथ मेरा पहला आउटिंग है, और मैं jQuery के लिए बहुत नया हूं, इसलिए अगर मेरे कोड में बदसूरत बिट्स हैं तो आसान हो जाओ!
क्या आप कोई समाधान ढूंढने में कामयाब रहे? यदि ऐसा है तो मैं एक उत्तर चुनने का सुझाव देता हूं: पी –
मैंने अभी तक नहीं किया, नहीं। मैंने संपादित किया लेकिन कोई और जवाब नहीं मिला। समस्या या तो PHP JSON ऑब्जेक्ट को एन्कोड कर रहा है या $ .each वाक्यविन्यास के साथ है। मैं कंसोलप्रतिक्रिया डेटा लॉग इन करें, और उसके बाद eval() - इसे संपादित करें और कंसोल लॉग इन करें और मुझे वही चीज़ मिलती है, इसलिए eval जवाब नहीं था। – user97410