3
並提前感謝您的答案。SharePoint 2013發送電子郵件從聯繫我們表格通過REST/JS
我想通過聯繫我們發送電子郵件表格。它似乎工作,但我沒有收到任何電子郵件。我對REST沒有任何經驗,並希望有人確定他們是否能夠發現任何問題。
這是在SharePoint 2013企業發佈網站上。
我爲了隱私目的更改了一些變量和ID。
HTML是在自定義頁面佈局中,並且在jQuery之後,JS在同一頁面佈局中被成功調用。
JS:
$.noConflict();
jQuery(document).ready(function($) {
// Code that uses jQuery's $ can follow here.
function submitForm() {
var toAddress = "[email protected]";
var fromAddress ="[email protected]";
var emSubject = "Public Contact Us Form Entry";
var lblName = "Name: ";
var valName = document.getElementById('form-name').value;
var lblEmail = "Email: ";
var valEmail = document.getElementById('form-email').value;
var lblMessage = "Message: ";
var valMessage = document.getElementById('form-message').value;
var emBody = lblName.concat(valName,lblEmail,valEmail,lblMessage,valMessage);
var data = {
properties: {
__metadata: { 'type': 'SP.Utilities.EmailProperties' },
From: fromAddress,
To: toAddress,
Body: emBody,
Subject: emSubject
}
}
var urlTemplate = _spPageContextInfo.webAbsoluteUrl + "/_api/SP.Utilities.Utility.SendEmail";
$.ajax({
contentType: 'application/json',
url: urlTemplate,
type: "POST",
data: JSON.stringify(data),
headers: {
"Accept": "application/json;odata=verbose",
"content-type": "application/json;odata=verbose",
"X-RequestDigest": $("#__REQUESTDIGEST").val()
},
success: function (data) {
alert('User(s) notified')
},
error: function (err) {
alert("Unable to send email -- " + JSON.stringify(err));
}
});
}
});
HTML:
<div class="label">Name</div>
<input name="Name" type="text" id="form-name" size="40">
<div class="label">Email</div>
<input name="E-mail" type="text" id="form-email" size="40">
<div class="label">Message</div>
<textarea name="Message" cols="55" rows="5" id="form-message"></textarea>
<div class="form-button">
<button onclick='submitForm()'>Submit</button>
</div>