on filtre les valeurs du select, pour n'afficher que celle possible

This commit is contained in:
Christophe 2020-11-10 08:22:24 +01:00
parent 0a6ed4cc7d
commit e287386eac
2 changed files with 46 additions and 39 deletions

View file

@ -272,6 +272,19 @@ let monTableau = {
];
localStorage.setItem(this.nameLocalStorage, JSON.stringify($table));
},
tableau() {
this.filtreCol.forEach((col) => {
let Tval = [''];
this.tableau.forEach((t) => {
let valCol = t.search[col];
if (Tval.indexOf(valCol) === -1) {
Tval.push(valCol);
this.filtreColValOk = true;
}
});
this.filtreColVal[col] = Tval;
});
},
},
methods: {
selectValCol() {
@ -333,16 +346,6 @@ let monTableau = {
}
if (config.filtreCol !== undefined) {
this.filtreCol = config.filtreCol;
this.filtreCol.forEach((col) => {
let Tval = [''];
this.table.forEach((t) => {
let valCol = t.search[col];
if (Tval.indexOf(valCol) === -1) {
Tval.push(valCol);
}
});
this.filtreColVal[col] = Tval;
});
}
Vue.nextTick(() => {
this.chargement = false;

View file

@ -318,6 +318,24 @@ var monTableau = {
filtreCol: this.filtreCol
}].concat(_toConsumableArray(this.table));
localStorage.setItem(this.nameLocalStorage, JSON.stringify($table));
},
tableau: function tableau() {
var _this3 = this;
this.filtreCol.forEach(function (col) {
var Tval = [''];
_this3.tableau.forEach(function (t) {
var valCol = t.search[col];
if (Tval.indexOf(valCol) === -1) {
Tval.push(valCol);
_this3.filtreColValOk = true;
}
});
_this3.filtreColVal[col] = Tval;
});
}
},
methods: {
@ -332,7 +350,7 @@ var monTableau = {
return '';
},
chargerJson: function chargerJson(id) {
var _this3 = this;
var _this4 = this;
var url = this.apiuri;
@ -368,56 +386,42 @@ var monTableau = {
return response.json();
}).then(function (data) {
var config = data.shift();
_this3.header = config.header;
_this4.header = config.header;
if (config.crayons !== undefined) {
_this3.crayons = config.crayons;
_this4.crayons = config.crayons;
}
if (config.classes !== undefined) {
_this3.classes = config.classes;
_this4.classes = config.classes;
}
if (parseInt(id) > 0) {
if (data.length > 0) {
var i = trouver_index(_this3.table, id);
_this3.table[i] = data[0];
var i = trouver_index(_this4.table, id);
_this4.table[i] = data[0];
} else {
var _i2 = trouver_index(_this3.table, id);
var _i2 = trouver_index(_this4.table, id);
_this3.table.splice(_i2, 1);
_this4.table.splice(_i2, 1);
}
} else {
_this3.table = data;
_this4.table = data;
if (data[0] && data[0].search) {
_this3.champ_search = 'search';
_this4.champ_search = 'search';
}
}
if (config.filtreCol !== undefined) {
_this3.filtreCol = config.filtreCol;
_this3.filtreCol.forEach(function (col) {
var Tval = [''];
_this3.table.forEach(function (t) {
var valCol = t.search[col];
if (Tval.indexOf(valCol) === -1) {
Tval.push(valCol);
}
});
_this3.filtreColVal[col] = Tval;
});
_this4.filtreCol = config.filtreCol;
}
Vue.nextTick(function () {
_this3.chargement = false;
_this4.chargement = false;
if ($_id > 0) {
_this3.selectLigne($_id, 'id');
_this4.selectLigne($_id, 'id');
var _url = new URL(window.location);
@ -502,7 +506,7 @@ var monTableau = {
}
},
exportCSV: function exportCSV() {
var _this4 = this;
var _this5 = this;
var $csv = [];
var $header = [];
@ -512,7 +516,7 @@ var monTableau = {
});
$tableau = this.tableau.reduce(function (acc, ligne) {
var $uneLigne = [];
Object.values(ligne[_this4.champcsv]).forEach(function (l) {
Object.values(ligne[_this5.champcsv]).forEach(function (l) {
return $uneLigne.push(l);
});
return [].concat(_toConsumableArray(acc), [[].concat($uneLigne)]);