Domanda

Considera il seguente codice:

var options = {
    title: 'Create a new Post'
    autoSize: true,
    url: url
}

SP.UI.ModalDialog.showModalDialog(options);
.

Il codice viene eseguito da un'azione personalizzata della BCE e da una parte web.Funziona bene in IE, tuttavia quando lo chiamo dal WebPart in Google Chrome, fornisce il seguente errore:

.

Uncaught TypeError: Object # non ha metodo 'showmodaldialog'

La cosa strana è che quando chiamo lo stesso codice identico (è parte della mia biblioteca) dall'azione personalizzata della BCE ora funziona in Google Chrome!

Ho provato a chiamarlo con

    .
  • ExecuteOrDelayUntilScriptLoaded
  • _spBodyOnLoadFunctionNames.push("funcname")
  • LoadSodByKey("sp.ui.dialog.js", null);

    Qualche idea o aiuto?Mi sta facendo impazzire!

È stato utile?

Soluzione

Questo è un problema cromato con il suo modello di memorizzazione nella cache.

Assicurati di chiamare

LoadSodByKey("SP.UI.Dialog.js", null); 
.

Per garantire il caricamento del file.

Altri suggerimenti

Questo errore specificato che si incontra nel browser Chrome, potrebbe essere eliminato utilizzando sp.sod.execute (key, functionname, args) metodo .

Sostituisci la riga

SP.UI.ModalDialog.showModalDialog(options);
.

con il

SP.SOD.execute('sp.ui.dialog.js', 'SP.UI.ModalDialog.showModalDialog', options);
.

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