在页面加载时,我会进行一次调用以获取所有收藏链接的当前状态(显示正确的消息:点击订阅,点击取消订阅。
最终密码! :)感谢您的帮助,请查看帖子修订版以查看问题。
$(InitFavorite);
function InitFavorite(){
var jList = $(".favourite_link");
var ids_to_check = {};//new Array();
$.each(jList, function () {
var id = this.id;
var object = id.split("_");
if (!ids_to_check[object[1]]) {
ids_to_check[object[1]] = [];
}
ids_to_check[object[1]].push(object[0]);
});
$.ajax({
type: 'POST',
url: '/user/subscription/favourite-listing',
data: ids_to_check,
dataType: 'json',
beforeSend: function(x) {
if(x && x.overrideMimeType) {
x.overrideMimeType("application/json;charset=UTF-8");
}
},
error: function() {
//could not load favourites
},
success: function(returned_values) {
$.each(returned_values.favourites.Clip, function(i, item) {
$('#'+i+'_Clip').html(''+item+'');
});
$.each(returned_values.favourites.Playlist, function(i, item) {
$('#'+i+'_Playlist').html(''+item+'');
});
}
});
答案 0 :(得分:0)
您必须解析文本,使其成为对象而不是JSON(纯文本):
var o = eval('(' + returned_values + ')');
然后您应该可以使用o
作为对象:
alert(o.env); // Gives "development"
更具体地说:
success: function(returned_values) {
var o = eval('(' + returned_values + ')');
$.each(o, function(i, item) {
console.log(item);
});
}