2014-12-22 2 views
0

값을 공유 목록에 저장하려고합니다. "SP.ClientContext.get_current();"를 사용하여 하위 사이트 목록에 저장할 수 있습니다. 아무 문제 없어. 그러나 URL을 사용하여 partent 사이트에서만 동일한 이름의 목록에 저장하고 싶습니다. 가져 오기 다음과 같은 오류 : catch되지 않은 형식 오류가 : 대신 get_current()를 호출 SP.ClientContext(siteUrl) 기능 (생성자)를 사용하는 경우 정의되지 않은상위 공유 지점 URL을 가져올 수 없습니다. Uncaught TypeError : 정의되지 않은 'get_web'속성을 읽을 수 없습니다.

  var siteUrl; 
      siteUrl = '/sites/Mysite/'; 
      var clientContext = SP.ClientContext(siteUrl);/*.get_current();*/ 
      var oList = clientContext.get_web().get_lists().getByTitle('QuizResults'); 


      var itemCreateInfo = new SP.ListItemCreationInformation(); 
      var oListItem = oList.addItem(itemCreateInfo); 

      var vURL = (document.URL); 
      var vScore = 'score'; 
      var vDate = new Date(); 

      oListItem.set_item('Title', vURL); 
      oListItem.set_item('Score', vScore); 
      oListItem.set_item('Date', vDate); 
      oListItem.update(); 
      clientContext.load(oListItem); 
      clientContext.executeQueryAsync(Function.createDelegate(this,onQuerySucceeded), Function.createDelegate(this, onQueryFailed)); 


      function onQuerySucceeded() 
      { 
      ('Item created: ' + oListItem.get_id()); 
      } 
      function onQueryFailed(args) 
      { 
      ('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace()); 
      } 

      //end of section for adding score to list 

답변

0

감사합니다 존-M,하지만 사실은 다음을 수행하여이 문제를 해결 : rootsite에 대한 ". .get_site() get_rootWeb는()"

0

의 특성 'get_web'을 읽을 수 없습니다, 당신의 인스턴스를 new 키워드와 함께 사용한다 새로운 문맥.

var clientContext = new SP.ClientContext.(siteUrl); 

get_current() 함수는 현재 페이지/사이트에 적합한 컨텍스트를 반환합니다. URL을 전달할 때 실제로 새 URL을 만들어야합니다.

0

열기 새 사이트 인

  var clientContext = new SP.ClientContext.get_current(); 
      var oList = clientContext.get_site().get_rootWeb().get_lists().getByTitle('QuizResults'); 

추가 된 부분을 사이트 URL 포함

string rootSiteUrl = SPContext.Current.Web.Site.Url; 
    using (SPSite site = new SPSite(rootSiteUrl)) 
      { 
      using (SPWeb web = site.OpenWeb()) 
      { 
       SPList list = web.GetList("QuizResults"); 

       //Add item here 


      } 
     } 
관련 문제