Pergunta

Considere o seguinte código:

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

SP.UI.ModalDialog.showModalDialog(options);

O código é executado a partir de um BCE ação personalizada e a partir de uma web part.Ele funciona bem no IE, no entanto, quando eu a chamo de peça web no Google Chrome, ele dá o seguinte erro:

Não Identificada TypeError:Objeto # não tem nenhum método showModalDialog'

O estranho é que quando eu chamar o exato mesmo código (faz parte da minha biblioteca) do BCE ação personalizada que agora funciona no Google Chrome!

Eu já tentei ligar ele com

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

Quaisquer ideias ou de ajuda?Ele está me deixando louco!

Foi útil?

Solução

Este é um Cromo problema com o cache de modelo.

Por favor, certifique-se de que você chamar

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

Para garantir que o arquivo é carregado.

Outras dicas

Este erro especificado que é encontrado no navegador Chrome, poderiam ser eliminados por meio de SP.A GRAMA.executar(tecla de functionName, args) Método.

Substituir a linha

SP.UI.ModalDialog.showModalDialog(options);

com o

SP.SOD.execute('sp.ui.dialog.js', 'SP.UI.ModalDialog.showModalDialog', options);
Licenciado em: CC-BY-SA com atribuição
Não afiliado a sharepoint.stackexchange
scroll top