Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何避免需要变量?_Javascript_Dom_Google Apps Script - Fatal编程技术网

Javascript 如何避免需要变量?

Javascript 如何避免需要变量?,javascript,dom,google-apps-script,Javascript,Dom,Google Apps Script,我正在创建一个表单,该表单由谷歌应用程序脚本处理,该脚本将结果转储到谷歌电子表格中。表单根据需要增长,使用Javascript和DOM使用id=“duplicate\u me”复制节 我能想出的唯一解决办法是把数字改成C?一个变量,但我意识到这是一个糟糕的解决方案,很难实现 如何将这些变量转换成允许我在循环中执行此命令的形式,而不是手动创建任意数量的这些条目 谢谢你的想法 --Dave您的解决方案完全正确 在循环中,写入e.parameter['C'+i+''u name']什么是“变量变量”?

我正在创建一个表单,该表单由谷歌应用程序脚本处理,该脚本将结果转储到谷歌电子表格中。表单根据需要增长,使用Javascript和DOM使用id=“duplicate\u me”复制节

我能想出的唯一解决办法是把数字改成C?一个变量,但我意识到这是一个糟糕的解决方案,很难实现

如何将这些变量转换成允许我在循环中执行此命令的形式,而不是手动创建任意数量的这些条目

谢谢你的想法


--Dave

您的解决方案完全正确


在循环中,写入
e.parameter['C'+i+''u name']

什么是“变量变量”?“变量取变量的值,并将其视为变量的名称。”我当前正在使用eval()为了解决这个问题,一旦系统允许,我将发布这种类型的解决方案。当我尝试以e.parameter.C1\u name的身份访问e.parameter[C1\u name]时,Google返回一个错误:
ReferenceError:“C1\u firstname”未定义。
@Dave:
[
需要一个字符串。您需要使用字符串连接,如我在回答中所示。
<form method="post" action="https://script.google.com/macros/s/.../exec">
  <fieldset>
    <input type="text" name="P_name">
    <input type="text" name="P_addr">
  </fieldset>
  <fieldset id="duplicate_me">
    <input type="text" name="C1_name">
    <input type="text" name="C1_addr">
  </fieldset>
  <fieldset id="first_duplicate">
    <input type="text" name="C2_name">
    <input type="text" name="C2_addr">
  </fieldset>
</form>
function doPost(e) {
...
  sheet.appendRow([ e.parameter.P_name, e.parameter.P_addr, e.parameter.C1_name, e.parameter.C1_addr ] );
  sheet.appendRow([ e.parameter.P_name, e.parameter.P_addr, e.parameter.C1_name, e.parameter.C1_addr ] );
...
}