首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有没有办法从html电子邮件中获取文本字段输入值?

有没有办法从html电子邮件中获取文本字段输入值?
EN

Stack Overflow用户
提问于 2018-12-26 15:51:27
回答 1查看 79关注 0票数 0

我目前正在创建一个使用谷歌脚本休假申请表。在用户提交表单后,它会向主管发送电子邮件。主管能够批准或拒绝,并能够从电子邮件本身说明拒绝的原因。我已经完成了工作流程,现在我只需要从电子邮件中的文本字段中检索一个值,并在电子表格中设置检索到的值。有什么建议或其他解决办法吗?

我尝试过document.getElementId(),但是这里没有定义文档,所以.我不太确定代码是否应该在doGet函数中,但是我认为这不太可能。

代码语言:javascript
复制
function sendingEmail(e) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
Logger.log(sheet.getRange(25, 14).getValue());
var employeeName = e.values[1];
var email = e.values[2];
var email2 = e.values[3];
var supervisor = e.values[4];
var employeeNo = e.values[5];
var typeofLeave = e.values[6];
var leaveShift = e.values[8];
var otherReason = e.values[7];
var reason = e.values[9];
var dateFrom = e.values[10];
var dateTo = e.values[11];
var row = e.range.getRow();
var supervisoremail = sheet.getRange(row, 14);
var status = sheet.getRange(row, 13);
var rejectReason = sheet.getRange(row, 15);

var url = 'https://script.google.com/macros/s/******exec?';

var approve = url +'approval=true'+'&reply='+ email +'&reply2='+ email2 +'&row=' + row; 
var reject = url +'approval=false'+'&reply='+ email +'&reply2='+ email2 +'&row=' + row;

var html = "<body>"+
              "<h2>Please review the leave application</h2><br />"+
                "Employee Name :"+ employeeName + "<br />"+
                "Employee Email :" + email + "<br />"+
                "Employee Email opt :" + email2 + "<br />"+
                "Supervisor Name :" + supervisor + "<br />"+
                "Employee No :" + employeeNo + "<br />"+
                "Type of Leave :" + typeofLeave + "<br />"+
                "Leave Shift :" + leaveShift + "<br />"+
                "Other Reason for Leave :" + otherReason + "<br />"+
                "Reason :" + reason + "<br />"+
                "From :" + dateFrom + "<br />"+
                "To :" + dateTo + "<br />"+
                  "<a href="+approve +">Approve</a><br />"+
                    "<a href="+ reject +">Reject</a><br />"+
                    <p> //TEXT FIELD INPUT HERE
        <input type="text" value="" name="Email" placeholder="Reject  Reason" id="rejectreason"/> 
    </p>
         "</body>";
if (supervisor == 'Geralt'){
status.setValue('PENDING');
supervisoremail.setValue('GeraltofRivia@gmail.com.my'); //set supervisor emails  into spreadsheet
MailApp.sendEmail("GeraltofRivia@gmail.com.my", "Approval Request", "What no HTML?", {htmlBody: html}) 
var y = p.getElementById('rejectreason').value; //CODE ENTERS HERE?
rejectReason = setValue(y); //SETVALUE THE STRING INTO SPREADSHEET
}
else if (supervisor == 'Ciri'){
status.setValue('PENDING');
supervisoremail.setValue('Ciri@gmail.com'); //set supervisor emails into spreadsheet
MailApp.sendEmail("Ciri@gmail.com", "Approval Request", "What no HTML?",  {htmlBody: html}); /* ciri email here*/
}

电子邮件输出:

代码语言:javascript
复制
  Please review the leave application
代码语言:javascript
复制
Employee Name :Yennefer
Employee Email :
Employee Email opt :yenofvengerberg@gmail.com
Supervisor Name :
Employee No :yen T138
Type of Leave :Annual Leave
Leave Shift :Full day
Other Reason for Leave :
Reason :holiday
From :12/2/2018
To :12/3/2018
Approve
Reject
Reject reason (text field)

这就是电子邮件html的样子。单击“拒绝/批准”链接后,我希望在电子表格中更新文本字段中的字符串或值。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-26 15:59:31

简短的回答是否定的。电子邮件只能显示信息,而不是接收信息。最好的选择是在电子邮件的正文中放置一个链接,当用户单击它时,它会将用户重定向到一个页面,在该页面中,用户可以填充您要求的字段。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53934189

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档