diff --git a/package.json b/package.json index 4182691..538ac2c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "freedatas2html", - "version": "0.8.6", + "version": "0.8.7", "description": "Conversion and display of data in different formats (CSV, JSON, HTML) with the possibility of filtering, classifying and paginating the results.", "main": "index.js", "scripts": { diff --git a/src/Pagination.ts b/src/Pagination.ts index 27af8c3..c2b2dca 100644 --- a/src/Pagination.ts +++ b/src/Pagination.ts @@ -132,12 +132,9 @@ export class Pagination implements Paginations this.pages.displayElement.eltDOM!.innerHTML=selectorsHTML; let selectElement=document.getElementById("freeDatas2HTMLPagesSelector") as HTMLInputElement; + // Réinitialisé, car dans le cas d'un réaffichage, les données et leur nombre peuvent changer. + this.pages.selectedValue=1; - if(this.pages.selectedValue !== undefined) - selectElement.value=""+this.pages.selectedValue; - else - this.pages.selectedValue=1; - let pagination=this; selectElement.addEventListener("change", function(e) { diff --git a/tests/paginationSpec.ts b/tests/paginationSpec.ts index 9c22198..e0eaf8b 100644 --- a/tests/paginationSpec.ts +++ b/tests/paginationSpec.ts @@ -170,20 +170,16 @@ describe("Test de la pagination.", () => selectElement=document.getElementById("pages").innerHTML; expect(selectElement).toEqual(fixtures.selectorForManyPages); }); - - it("Si une page a précédément été sélectionnée, elle doit être gardée.", () => + + it("Après chaque actualisation de la liste de pages, la valeur sélectionnée est remise à 0.", () => { + pagination.pages2HTML(11); + let selectElement=document.getElementById("freeDatas2HTMLPagesSelector") as HTMLInputElement; + expect(pagination.pages.selectedValue).toEqual(1); pagination.pages.selectedValue=2; pagination.pages2HTML(11); - const selectElement=document.getElementById("freeDatas2HTMLPagesSelector") as HTMLInputElement; - expect(selectElement.value).toEqual("2"); - }); - - it("S'il n'a pu eu de page précédément sélectionnée, c'est la première qui est enregistrée.", () => - { - pagination.pages2HTML(11); - const selectElement=document.getElementById("freeDatas2HTMLPagesSelector") as HTMLInputElement; - expect(pagination.pages.selectedValue).toEqual(1); + selectElement=document.getElementById("freeDatas2HTMLPagesSelector") as HTMLInputElement; + expect(pagination.pages.selectedValue).toEqual(1); }); it("La manipulation du sélecteur de pages doit enregistrer la valeur sélectionnée et appeler la fonction actualisant l'affichage.", () =>