J'essaye d'écrire du javascript pour pouvoir lire la date d'une colonne d'une liste SharePoint. Par exemple si dans ma colonne de date (MonthNeeded) la date est 03/15 je veux être en mesure de vérifier si la date est < 30 jours à compter de la date d'aujourd'hui ou < = 90 jours à compter de la date d'aujourd'hui et ainsi de suite. Quand il vérifie cela, il changera la couleur de ligne correspondant à cette date d'une certaine couleur. Moins de 30 jours à compter d'aujourd'hui il sera rouge, supérieur ou égal à 30 jours il sera orange, etc ...Modification de la couleur des lignes de la liste SharePoint
J'ai écrit du code dans Visual Studio car je ne peux malheureusement pas utiliser SharePoint Designer avec mon instance de SP donc je ne peux pas tester mon code en temps réel.
Voici ce que j'ai jusqu'à présent:
function CheckStatus() {
var x = document.getElementsByTagName("TD") // find all of the TDs
var _dueDate = new Date(ctx.CurrentItem.MonthNeeded)
var now = Date();
var nowPlus30 = new Date();
nowPlus.setDate(now.getDate() + 30);
var nowPlus90 = new Date();
nowPlus.setDate(now.getDate() + 90);
if (_dueDate == '' || !_dueDate) {
return '';
}
var i = 0;
for (i = 0; i < x.length; i++) {
if (x[i].className == "ms-vb2") //find the TDs styled for lists
{
if(_dueDate <= nowPlus30) //find the data to use to determine the color
{
x[i].parentNode.style.backgroundColor = 'orange'; // set the color
}
//repeat the above for each data value
if (_dueDate <= nowPlus90) {
x[i].parentNode.style.backgroundColor = 'yellow'; // set the color
}
if (_dueDate > nowPlus30) {
x[i].parentNode.style.backgroundColor = 'red'; // set the color
}
}
}
}
Toute aide serait grandement appréciée!
Si vous utilisez SP2013, vous devriez utiliser JSLink - http://www.learningsharepoint.com/2013/04/04/color-code-list-items-with-javascript-using-js-link-in -sharepoint-2013/ –