jQuery e SharePoint 2010 - Come faccio a sapere se la pagina è in modalità di modifica, utilizzando JavaScript?

sharepoint.stackexchange https://sharepoint.stackexchange.com/questions/4832

Domanda

Ho un javascript in una CEWP che voglio eseguire solo quando la pagina è in modalità di visualizzazione. Ho usato Firebug di setacciare pagina per un certo tipo "msEditMode" della variabile o qualcosa che posso fare affidamento su.

Ho visto un sacco di domande e risposte su come capire se una pagina è in modalità di modifica, dal lato server, ma non riesco a trovare una soluzione per come dire se la pagina è in modalità di modifica, lato client.

Qualcuno può punto nella giusta direzione di me? Ho bisogno di creare una web part che semplicemente emette variabile tale? (Che sembra eccessivo per me.)

Grazie mille!

È stato utile?

Soluzione

La soluzione di Rob - guardando il pulsante -. Si presenta come un valido approccio

Inoltre, non esitate a dare un'occhiata al mio codice v5 Facile Tabs:

http://www.pathtosharepoint.com/ sharepoint-user-toolkit / Pagine / Easy-Tabs-v5.aspx

Nel caso delle schede facile, ho usato un approccio diverso perché avevo bisogno il codice per lavoro sia in SP 2007 SP 2010. Qui ci sono le prove che includevano:

p.getAttribute("contenteditable")=="true"; //(where p is a Web Part zone)
document.forms[0].elements["MSOLayout_InDesignMode"].value=="1";
document.forms[0].elements["_wikiPageMode.value"]=="true"; //(wiki page)

Altri suggerimenti

ho trovato post del blog di Amal Hashim: Javascript Rileva SharePoint pagina In Edit Mode ci sono diversi approcci per le pagine, wiki e le pagine editoriali. Li ho combinate in una funzione di supporto:

function isEditMode() {
    var publishingEdit = window.g_disableCheckoutInEditMode,
        form = document.forms[MSOWebPartPageFormName],
        input = form.MSOLayout_InDesignMode || form._wikiPageMode;  
    return !!(publishingEdit || (input && input.value));
}

Questo restituisce true se la pagina è in fase di modifica, e false se la pagina è in modalità di visualizzazione.

Un approccio un po 'di formaggio è quello di cercare un elemento della pagina che esiste quando la pagina è in modalità di modifica. Ad esempio, quando in modalità di modifica delle "Strumenti di modifica" appare nastro e c'è un salvataggio icona fuori a sinistra. Se si utilizzano gli strumenti di sviluppo di IE, si vedrà il codice per il salvataggio aspetto dei pulsanti come questo:

Quindi, utilizzando jQuery è possibile verificare l'esistenza di "Salva e chiudi" nella pagina ... o scegliere un elemento completamente diverso -. Uno che è unico nel suo genere

Tenete a mente che i diversi tipi di pagine (blog, wiki, pagine web part) possono o non possono utilizzare diversi tag quindi questo potrebbe non funzionare su tutta la linea. Pertanto verifica che la pagina che si sta lavorando con prima di includere lo script.

Trovato maggiori informazioni. Se si vuole farlo attraverso il modello a oggetti, vedere se uno di questi link aiuta:

http://msdn.microsoft. com / it-it / library / microsoft.sharepoint.publishing.webcontrols.editmodepanel.aspx

Alcuni esempi di implementazioni della classe di cui sopra: http://mystepstones.wordpress.com/2008/ 09/23 / rilevazione the current-mode-displayedit /

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