document.getElementById("contact-email-check").addEventListener("paste", function(e) { e.preventDefault() }); function closeModal() { jQuery('#infoModal').hide(); } function sendMail() { const sendMailBtn = document.getElementById("send-mail-btn"); sendMailBtn.setAttribute("disabled", true); sendMailBtn.style.display = "none"; const loadingButton = document.getElementById("btn-loading"); loadingButton.style.display = "block"; grecaptcha.ready(function() { var grecaptchaToken; grecaptcha.execute('6LduUPkbAAAAANQtc_XtuBNgfo_dwdEo7aabf2iP', { action: 'homepage' }) .then(function(token) { grecaptchaToken = token; var contactForm = document.getElementById("contact-form"); var contactFormData = new FormData(contactForm); contactFormData.append('grecaptchaToken', grecaptchaToken); console.log(grecaptchaToken); var XHR = new XMLHttpRequest(); XHR.open( "POST", "https://script.google.com/macros/s/AKfycbxQSIopIg8bzu2tVzBtcyTR50HV5OIObcUR_6qW1lDQOjURHIv-B0eSg6r_EH2MFd6P/exec", true ); XHR.onreadystatechange = function() { if (XHR.readyState != 4) { return; } if (XHR.status != 200) { console.log("error"); alert("送信に失敗しました。"); sendMailBtn.style.display = "block"; loadingButton.style.display = "none"; sendMailBtn.removeAttribute("disabled"); return; } var result = false; var resData; if (XHR.status == 200) { console.log(JSON.parse(XHR.response)); resData = JSON.parse(XHR.response); if (resData.result) { result = true; } } const resultMessage = resData.message; const resultMessageDom = document.getElementById('sendResult'); if (result) { console.log("success"); resultMessageDom.innerText = resultMessage; jQuery('#infoModal').modal('show'); document.getElementById('contact-form').reset(); sendMailBtn.style.display = "block"; loadingButton.style.display = "none"; sendMailBtn.removeAttribute("disabled"); } else { console.log("send error"); resultMessageDom.innerText = resultMessage; jQuery('#infoModal').modal('show'); sendMailBtn.style.display = "block"; loadingButton.style.display = "none"; sendMailBtn.removeAttribute("disabled"); } }; XHR.send(contactFormData); }) .catch(e => console.log(e)); }); }