我正在为表格创建一个Google插件。我正在使用的侧边栏旨在提供帮助票,但是在开发这部分内容之前,我没有得到表单中的提交按钮来调用要构建的javascript函数。< / p>
我已从html按钮调用激活的Logger.log中删除了所有表单数据。没有骰子。 我创建了一个完全独立(且非常简单)的按钮,以调用另一个函数来调用Logger.log。这也没有用。 我已经仔细检查了表单数据,发送调用和函数。 我确保函数的名称(sendMsg)是唯一的。 我认为问题可能不在我的代码中,而是以其他方式将html和javascript(.gs)连接在一起。
这是html表单:
<div class="block form-group">
<form>
<label for="reason">Purpose of Contact</label>
<select id="reason">
<option selected>Help Request</option>
<option>Feature Request</option>
<option>Error Report</option>
<option>Other</option>
</select>
<label for="email">Email</label>
<input type="text" id="email" style="width: 200px;">
<label for="phone">Phone</label>
<input type="text" id="phone" style="width: 120px;" value = "optional">
<br>
<label for="translated-text">
<b>Message</b></label>
<textarea id="userMsg" rows="15" cols="35">
</textarea>
<br>
<input id="app" name="appSrc" type="hidden" value="COE">
<input type="button" class="action" name="helpRequest" value="SEND" onClick="google.script.run.sendMsg(
document.getElementById('reason').value,
document.getElementById('email').value,
document.getElementById('phone').value,
document.getElementById('userMsg').value,
document.getElementById('appSrc').value
)" />
</form>
</div>
这是称为:
的函数function sendMsg(appSrc,reason,email,phone,userMsg) {
appV = appSrc;
reasonV = reason;
emailV = email;
phoneV = phone;
userMsgV = userMsg;
Logger.log('cheese');
}
现在,该表单应仅导致Logger.log消息。此时什么也没发生。
答案 0 :(得分:2)
sendMsg()
脚本不起作用。
sendMsg()
。如果我的理解是正确的,那么该修改如何?
<input id="app" name="appSrc" type="hidden" value="COE">
时,appSrc
不是id。这样,在document.getElementById('appSrc').value
处发生错误,并且sendMsg()
无法正常工作。因此,例如,如果您的脚本被修改,请使用app
。document.getElementById('appSrc').value
document.getElementById('app').value
或
<input id="app" name="appSrc" type="hidden" value="COE">
<input id="appSrc" name="appSrc" type="hidden" value="COE">
如果我误解了您的问题,而这不是您想要的结果,我深表歉意。
答案 1 :(得分:0)
如果有人遇到和我一样的问题... onpress
在这里似乎不起作用。我不得不将其更改为 onclick
。