Domanda

È possibile aggiungere una sorta di validazione JavaScript in elementi ECB come Modifica elemento, check out e flussi di lavoro?Quello che voglio è un semplice avviso JavaScript e reindirizzarsi nell'elenco Se l'elemento cliccato non passa la convalida, dall'altra parte, l'utente verrà reindirizzato alla pagina specifica se l'elemento ha superato la convalida (IE WorkFlow.aspx se l'utentecliccato sui flussi di lavoro).Funzioni prioritarie come il daedcheckincheckoutMenIulitem da Core.js in un editor di contenuti WebPart non ha funzionato per me (è ancora possibile?).Non voglio anche creare una BCE completamente nuova, ecco perché non voglio usare custom_adddoclibmenitems e restituire false.

Cosa voglio in Pseudo-Code nella BCE OnClick per gli articoli non personalizzati:
if(condition) JS alert; redirect back to list; else normal behavior;

È stato utile?

Soluzione

L'ho fatto prima e ho lavorato per me. Esistono diverse funzioni che regolano il menu della BCE e che puoi sovrascrivere (dove "può" significa che hai la possibilità di farlo perché questo è JavaScript, ma ovviamente non è qualcosa di ufficialmente supportato, il che significa che un futuro aggiornamento o service packpotrebbe spezzare il tuo codice).

sono:

AddDocLibMenuItems //(the main function that shows all the ECB actions by calling the other functions listed below)
CAMOpt //(creates all the menu items)    
AddSharedNamespaceMenuItems //(show View/Edit)
AddSendSubMenu //(send to)   
AddDocTransformSubMenu //(convert document)    
AddWorkflowsMenuItem //(create the workflow menu item)
CIMOpt //(custom actions)
.

Ecco un esempio di una funzione Camopt sovrascritta che mostra un avviso quando viene cliccato la voce di menu Flussi di lavoro:

CAMOpt = function (p,wzText,wzAct,wzISrc,wzIAlt,wzISeq,wzDesc)
{ULSsa6:;
if (wzText == "Workflows") wzAct = "alert('hi there!')";    
var mo=CMOpt(wzText,wzAct,wzISrc,wzIAlt,wzISeq,wzDesc);
    if(!mo)return null;
    AChld(p,mo);
    return mo;
} 
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a sharepoint.stackexchange
scroll top