2017-10-04 11 views
0

SP 서비스를 사용하여 SharePoint 목록에 게시하는 jQuery 코드를 작성하려면 어떻게해야합니까? 현재 메일 링 그룹 이름과 세부 정보를 얻기 위해 양식을 사용하고 있습니다. 코드를 실행하면 서버 500 오류가 발생합니다. 내 방법에 문제가 있다는 것이 확실합니다. 여기 SP 서비스를 사용하는 SharePoint UpdateListItems 게시하지 않음 오류

내 SP 서비스 코드입니다 :

//Add Mail Item 
$(document).on('click', '#add-group', function() { 
    var title = $("input#titleName").val(); 
    var mga = $("input#mga").val(); 
    var serviceNews = $("input[type=checkbox][name=basic-news]:checked").val(); 
    var serviceHealth = $("input[type=checkbox][name=advanced-health]:checked").val(); 
    console.log(title); 
    console.log(mga); 
    console.log(serviceNews); 
    console.log(serviceHealth); 
    console.log(userLogin); 
    $().SPServices({ 
     operation: "UpdateListItems", 
     async: false, 
     batchCmd: "New", 
     listName: "BDJ Mailing Group Subscribers", 
     valuepairs: [["Title", title], ["MailingGroupAddress", mga],["ServiceNews", serviceNews],["ServiceHealth", serviceHealth]], 
     completefunc: function (xData, Status) { 
      alert("success"); 
     } 
    }) 
}) 

오류 메시지 : 당신이 의견에서 언급 한 바와 같이

/_vti_bin/Lists.asmx 500 (Internal Server Error) 
+0

'ServiceNews' 및'ServiceHealth' 부울 필드가 있습니까? –

+0

그들은 yes와 no fields이다. – azmatrix

+0

'console.log (serviceNews);의 값은 무엇인가? , console.log (serviceHealth);'? –

답변

1

, 그들은 예/아니오 필드 것을, 당신은 1로 값을 전달해야하거나 부울 필드는 "예"또는 "아니오"가 아닌 1 또는 0 값을 허용합니다. 다음과 같이 코드를 수정하고 시도하십시오.

$(document).on('click', '#add-group', function() { 
    var title = $("input#titleName").val(); 
    var mga = $("input#mga").val(); 
    var serviceNews = $("input[type=checkbox][name=basic-news]:checked").val(); 

    var serviceNewsValue = (serviceNews == "Yes") ? 1 : 0; 

    var serviceHealth = $("input[type=checkbox][name=advanced-health]:checked").val(); 

    var serviceHealthValue = (serviceHealth == "Yes") ? 1 : 0; 

    console.log(title); 
    console.log(mga); 
    console.log(serviceNews); 
    console.log(serviceHealth); 
    console.log(userLogin); 
    $().SPServices({ 
     operation: "UpdateListItems", 
     async: false, 
     batchCmd: "New", 
     listName: "BDJ Mailing Group Subscribers", 
     valuepairs: [["Title", title], ["MailingGroupAddress", mga],["ServiceNews", serviceNewsValue],["ServiceHealth", serviceHealthValue]], 
     completefunc: function (xData, Status) { 
      alert("success"); 
     } 
    }) 
}) 
+0

시도했지만 403 금지 된 오류가 발생했습니다. 값 쌍을 제목으로 줄이더라도 오류가 발생합니다. – azmatrix

+0

오류는 매우 명백합니다. 항목을 목록에 추가 할 권한이있는 계정을 사용해야합니까? UI를 통해 항목을 추가 할 수 있습니까? –

+0

예, 액세스 권한이 있으므로 SharePoint의 GUI를 통해 항목을 추가 할 수 있습니다. – azmatrix