문제

다음 코드를 고려하십시오.

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

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

코드는 ECB 사용자 정의 작업 및 웹 파트에서 실행됩니다.그러나 IE에서 잘 작동하지만 Google 크롬의 WebPart에서 전화를 걸 때 다음 오류가 발생합니다.

Unchacky TypeError : 오브젝트 #은 'showmodaldialog'메소드가 없습니다

이상한 것은 내가 ECB 사용자 정의 동작에서 똑같은 코드 (내 라이브러리의 일부)를 호출 할 때 Google 크롬에서 작동합니다!

로 전화를 시도했습니다.

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

    아이디어 또는 도움말?그것은 나를 미치게했다!

도움이 되었습니까?

해결책

이것은 캐싱 모델의 Chrome 문제입니다.

를 콜려고 해주십시오.

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

파일이로드되었는지 확인하십시오.

다른 팁

Chrome 브라우저에서 발생하는이 지정된 오류는 sp.sod.execute (키, functionName, args) 메서드 .

라인을 교체

SP.UI.ModalDialog.showModalDialog(options);
. 와 함께

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

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 sharepoint.stackexchange
scroll top