0
我是javascript新手,我需要維護一個站點。 實際功能是將多張卡片下載到一個文件中,每個卡片一張卡片。由於用戶可以擁有大量的卡片,治療並不總是成功(太多標籤),所以我想創建一個文件例如20個標籤。javascript - 下載幾個文件
var printTerm = function(grid){
var rows = grid.selected;
if(rows==null) return;
var ids = rows.map(function(val){return grid.getDataByRow(val).num_terme;});
var nbMax = 20;
var nbFic;
var idsPartiel;
var posDebut;
var posFin;
var a;
if(ids.length > nbMax)
{
idsPartiel = ids;
if(ids.length % nbMax == 0) nbFic = ids.length/nbMax;
else nbFic = ((ids.length - (ids.length % nbMax))/nbMax) + 1;
for (i=0 ; i< nbFic ; i++)
{
posDebut = (nbMax * i);
if(i == nbFic - 1) posFin = idsPartiel.length + 1;
else posFin = posDebut + nbMax;
ids = idsPartiel.slice(posDebut,posFin);
a = new Element('a', 'id':'download','href':'php/utils/export2pdf.php?ids='+ids.join(',')})
.addEvent('click',function(){location.href=this.href;}).inject(document.body);
a.fireEvent('click');
a.dispose();
}
}
else
{
a = new Element('a',{'id':'download','href':'php/utils/export2pdf.php?ids='+ids.join(',')})
.addEvent('click',function(){location.href=this.href;}).inject(document.body);
a.fireEvent('click');
a.dispose();
}
};
當卡的數量小於或等於nbMax,它工作得很好,卜時,必須有幾個文件,而不是:只在循環的最後一段是創建該文件。 當我試圖看看螢火蟲發生了什麼,我看到我的治療線,但只有最後一個結束。 感謝您的幫助。
非常感謝,你說得對。我會試試這個。 – Brice