Voici quelques fonctions que j'ai qui utilisent le plug-in officiel jQuery modèle et insérez certains JSON mes devs back-end me donnent dans le var
s topPages
et latestPages
mais pour une raison quand j'appelle la fonction insertOrHideList()
puis appeler la fonction renderList()
normale, il est portant l'attribut max
pour une raison quelconque. Ainsi, au lieu d'obtenir des résultats 100
(voir 2ème ligne de renderList()
im obtenir 5
voir les appels insertOrHideList()
en bas)JSON est en cours de modification dans mon JavaScript ... pourquoi?
Toutes les idées?
function renderList(json,max){
if(!max){max=100}
tempjson = json;
tempjson.length = max;
the_template = $.template(null, '<li><a href="{{if CONTENT_ID}}article/${CONTENT_ID}{{else}}${CATEGORY_TREE_ID}{{/if}}" title="Go to the ${TITLE} page">${TITLE}</a></li>');
return $.tmpl(the_template,tempjson);
}
function insertOrHideList(selector,json,max){
if(!max){max=5}
if(typeof json !== 'undefined' && json.length >= 5){
$(selector).append(renderList(json,max));
}
else{
$(selector).parent().remove();
}
}
insertOrHideList('.most-popular ol',topPages,5);
insertOrHideList('.recently-added ol',latestPages,5);
console.log(renderList(latestPages));
oh, je pensais que ce copiait ... comment puis-je créer une nouvelle instance ?! –
@Oscar - a ajouté comment faire :) –
'tempjson = new Object (json)'? –