Я перебираю набор данных json, который содержит результаты нескольких таблиц базы данных.Среди прочих данных у меня есть таблица RateTable ... erm ... и таблица ресурсов.RateTable имеет имя свойства ResourceId, которое ссылается на запись ресурсов.
Итак, я перебираю свой RateTable, и мне нужно сослаться на мою запись ресурса и использовать ее, скопировав в свою собственную переменную.Вот что у меня есть:
if (data)
{
var rs = data.Resources;
$.each(data.RateTables, function(i,item){
if (item.RateTableTypeId == 91)
{
var r = getresource(item.SupplierResourceId, rs)
if (r)
customer_options += '<option value="' + r.ResourceId + '">' + r.Name + '<\/option>';
}
else if (item.RateTableTypeId == 92)
{
var r = getresource(item.CustomerResourceId, rs)
if (r)
supplier_options += '<option value="' + r.ResourceId + '">' + r.Name + '<\/option>';
}
});
$(".ddl-customer").html(customer_options);
$(".ddl-supplier").html(supplier_options);
}
function getresource(id, items)
{
$.each(items, function(i,item){
if (item.ResourceId == id)
return $.extend(true, {}, item);
});
}
Проблема, с которой я столкнулся, заключается в том, что getresource не возвращает копию моего элемента Resource в переменной r.Почему?
Извините, я не могу опубликовать некоторые данные json, они абсолютно огромны, поэтому мы оставляем ссылки на клиентскую сторону для сокращения полезной нагрузки данных.Я надеюсь, что этого достаточно, чтобы помочь кому-то понять, что я пытаюсь сделать.
Ллойд