gpt4 book ai didi

javascript - 检查是否有重复值然后弹出一条消息谷歌脚本

转载 作者:行者123 更新时间:2023-12-02 23:15:10 24 4
gpt4 key购买 nike

我有一个特定 ID 号的 html 输入。如果用户输入 ID 号,它将在 google 脚本中检查该 ID 号是否已存在。如果已经存在,则会弹出一条消息,其中包含 ID 号。

这是 ID 的 html 输入: enter image description here

这是我的 Google 表格 ID 列表的屏幕截图:

enter image description here

我的 html 代码:

   <div class="row">
<!-- ID NUMBER -->
<div class="input-field col s4">
<input id="idnum" type="text" class="validate">
<label for="idnum">Identification Number</label>
</div> <!-- CLOSE ROLL NUMBER FIELD -->
</div> <!-- CLOSE ROW -->

对于 JavaScript:

<script>
document.getElementById("idnum").addEventListener("input",getID);

function getID(){

var IdNum = document.getElementById("idnum").value;

if(IdNum.length === 5){
google.script.run.withSuccessHandler(updateID).getID(IdNum);
}
}

function updateID(idn){
alert("ID Number: " + idn + " already exist.");
//document.getElementById("idnum").value = "";
}

</script>

对于谷歌脚本:

function getID(IdNum){

var ss = SpreadsheetApp.openByUrl(url);
var ws = ss.getSheetByName("Test_Data");
var data = ws.getRange(1, 1, ws.getLastRow(), 1).getValues();

var IdList = data.map(function (r){return r[0];})

var Idpos = IdList.indexOf(IdNum);

if (Idpos > -1)
{
return IdList[Idpos];
}
}

我无法显示包含在 html 中输入的 ID 号的弹出消息。它总是会说“未定义”。

enter image description here

由于我将 document.getElementById("idnum").value = ""; 放入 JavaScript 中,它总是删除输入。我需要的是,如果 hmtl 中输入的 ID 号存在,它会弹出一条消息,说明 ID 存在,但如果不存在,它将保留输入值而不是删除它。

例如,如果我在html中输入“12345”,则会弹出一条消息“ID号:12345已存在”。然后它将删除输入值。如果我输入尚未在工作表中的“55555”,则不会弹出消息,并且该值不会被删除或设置为空白。预先非常感谢您的帮助。

最佳答案

我将我的谷歌脚本更改为:

function getID(IdNum){

var ss = SpreadsheetApp.openByUrl(url);
var ws = ss.getSheetByName("Test_Data");
var data = ws.getRange(1, 1, ws.getLastRow(), 1).getValues();
var dJoin = data.join().split(",");
var myId = dJoin.indexOf(IdNum);

if (myId > -1){
return IdNum;
} else {
return "unavailable";
}
}

我的 JavaScript 为:

<script>
document.getElementById("idnum").addEventListener("input",getID);

function getID(){

var IdNum = document.getElementById("idnum").value;

if(IdNum.length === 5){
google.script.run.withSuccessHandler(updateID).getID(IdNum);
}
}

function updateID(idn, IdNum){
var IdNum = document.getElementById("idnum").value;

if (idn === IdNum) {
alert("ID Number: " + idn + " already exist.");
document.getElementById("idnum").value = "";
}
}
</script>

关于javascript - 检查是否有重复值然后弹出一条消息谷歌脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57193139/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com