大家下午好,我希望有人能帮我解答这个问题。我有一个代码,可以检测输入是否填充了正确的数据(例如:用户名),从一个变量的值验证它。我想看看是否有可能,而不是从一个变量验证值,该值可以从谷歌工作表验证。或者看看变量的值,而不是直接在代码中设置,可以从谷歌工作表读取。希望有一种方法,最好只使用Javascript。我附上了HTML和GS代码的副本以及Google工作表的图像(图1),待验证的值位于其中。在本例中,如果输入中捕获了名称“JHON”,则将显示“正确”消息,如果输入了不同的值,就会显示“不正确”的信息,需要验证的数据是在一个变量的值中找到的(var value_name =“JHON”),直接在变量中输入(pic 2),但是我需要从google工作表中验证数据,希望有办法,提前感谢。
超文本标记语言
<!DOCTYPE html>
<html>
<head>
<base target="_top">
</head>
<br>
NAME:<br>
<input type="text" id="name">
<script>
var user_name = "JHON"
</script>
<script>
function checkUser() {
if (document.getElementById("name").value == user_name) {
alert ("correct");
}
else {
alert ("incorrect");
}
}
</script>
<input type='button' value='VALIDATE' onclick="checkUser()" >
</html>
一般事务
(函数“fetchUserValues1()",是一个认为需要从GoogleSheets中获取值但无法使其工作的函数)
function doGet() {
var template = HtmlService.createTemplateFromFile("HTML_start_page")
return template.evaluate().setSandboxMode(HtmlService.SandboxMode.IFRAME);
return HtmlService.createHtmlOutputFromFile('HTML_start_page');
}
function fetchUserValues1(){
var ss = SpreadsheetApp.openByUrl("GoogleSheet URL");
var sheetNames = ss.getSheetByName("Sheet 1");
var user_name = sheetNames .getRange("A2").getValue();
return user_name;
}
1条答案
按热度按时间vhmi4jdf1#
因此,看看你正在做的事情和你的代码,我想你已经错过了一些事情与使用谷歌“HTML服务”。
https://developers.google.com/apps-script/guides/html/communication
页面的顶部有一个非常简单的
index.html
示例,它与code.gs
配对。我认为,根据您提供的代码,您可能希望您的
checkUser
执行google.script.run.fetchUserValues1()
操作,或者让按钮执行google.script.run.withSuccessHandler(checkUser).fetchUserValues1()
操作您可能希望成功处理程序能够将
.fetchUserValues1()
的输出传递到checkUser()
函数中。所以你的HTML可能看起来像...