Je parcours une série de données json qui portent les résultats de quelques tables de base de données. Parmi les autres données, j'ai une table RateTable ... erm ... et une table Resources. Le RateTable a un nom de propriété ResourceId qui lie à l'enregistrement de ressources. Donc, je suis en train d'itérer sur mon RateTable et j'ai besoin de référencer mon enregistrement Resource et de l'utiliser en le copiant dans sa propre variable. Voici ce que j'ai jusqu'à présent:jquery copy json object
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);
});
}
Le problème est que je getResource ne retourne pas une copie de mon élément de ressources dans la variable r. Pourquoi?
Désolé, je ne peux pas publier certaines des données json, c'est absolument énorme, c'est pourquoi nous laissons le référencement au côté client pour réduire la charge utile de données. J'espère qu'il y en aura assez pour aider quelqu'un à voir ce que j'essaie de faire.
Lloyd