如何在Google表格App中获取Browser.msgBox的用户响应?
解决Browser.msgBox响应未定义的问题
嘿,这个问题很常见——你只是没有把Browser.msgBox()的返回值赋值给response变量,导致代码里直接使用的response根本没被声明或初始化,所以才会报“response is not defined”的错误。
正确的写法应该是这样:
// 先将msgBox的返回值赋值给response变量 const response = Browser.msgBox('Greetings', 'hello world', Browser.Buttons.YES_NO); if (response == Browser.Buttons.YES) { Logger.log('The user clicked "Yes."'); } else { // 这里会覆盖用户点击"No"或者关闭对话框的情况 Logger.log('The user clicked "No" or the dialog\'s close button.'); }
关键说明:
Browser.msgBox()方法本身会返回一个代表用户操作的枚举值(比如Browser.Buttons.YES、Browser.Buttons.NO、Browser.Buttons.CLOSE)- 你必须把这个返回值存储到一个变量里(比如上面的
response),之后才能通过这个变量判断用户的操作
这样修改后,代码就能正确捕获用户的响应并执行对应的逻辑啦。
内容的提问来源于stack exchange,提问作者Neo
相关产品推荐
相关产品推荐

