来自Google工作表单元格值的变量值FETH(Google应用程序脚本)(JAVASCRIPT)

0tdrvxhp  于 2023-01-07  发布在  Java
关注(0)|答案(1)|浏览(125)

大家下午好,我希望有人能帮我解答这个问题。我有一个代码,可以检测输入是否填充了正确的数据(例如:用户名),从一个变量的值验证它。我想看看是否有可能,而不是从一个变量验证值,该值可以从谷歌工作表验证。或者看看变量的值,而不是直接在代码中设置,可以从谷歌工作表读取。希望有一种方法,最好只使用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;
}

vhmi4jdf

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可能看起来像...

<!DOCTYPE html>
<html>

<head>
    <base target="_top">
</head>
<br>
NAME:<br>
<input type="text" id="name">

<script>
    function checkUser(user_name) {
        if (document.getElementById("name").value == user_name) {
            alert("correct");
        }
        else {
            alert("incorrect");
        }
    }

    function handleButton() {
        google.script.run.withSuccessHandler(checkUser).fetchUserValues1()
    }
</script>

<input type='button' value='VALIDATE' onclick="handleButton()">

</html>

相关问题