Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.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_Forms_Google Apps Script - Fatal编程技术网

Javascript 当仅选择一个项目时,如何处理包含多个项目的选择

Javascript 当仅选择一个项目时,如何处理包含多个项目的选择,javascript,forms,google-apps-script,Javascript,Forms,Google Apps Script,我有一个select表单元素,它接受多个项目 提交表单时,我将项目添加到一个数组中,然后处理它们,然后运行该数组对每个项目执行操作 当只选择了一个项目时,我遇到了一个问题 传递一个项目时数组的长度不是1,而是所选项目中的字符数 function processForm(formObject){ var list = []; list = formObject.listElement; for (var i=0;i<list.length;i++) { Logger.l

我有一个select表单元素,它接受多个项目

提交表单时,我将项目添加到一个数组中,然后处理它们,然后运行该数组对每个项目执行操作

当只选择了一个项目时,我遇到了一个问题

传递一个项目时数组的长度不是1,而是所选项目中的字符数

function processForm(formObject){
  var list = [];
  list = formObject.listElement;

  for (var i=0;i<list.length;i++) {
    Logger.log(list[i]);
  }
}
函数processForm(formObject){
var列表=[];
list=formObject.listElement;
对于(var i=0;i你有:

var list = [];
将空数组分配给列表,然后:

将其替换为formObject.listElement返回的任何内容,因此初始赋值是无意义的

您尚未指明控件listElement的类型,它可能是或。两者都有一个返回选项数组的方法

如果使用该方法,则无需测试返回值是否为数组,它应始终为(可能为空)数组:


假设listElement是上述对象之一。

像数组一样遍历字符串将给出您描述的行为。如果数组还不是数组,您可以先转换它

var list = formObject.listElement;
if (!Array.isArray(list)) list = [list];

尾随“)”是帖子中的一个输入错误。因为我使用的是应用程序脚本,所以对列表的引用在formObject中,并传递给函数。然后我尝试将list元素的值分配给变量list,这是可行的,但如果选择了一个项,它就不会像数组一样看到它。可能是在选择了一个项的地方,
formObject.listElMent
返回所选项目的值,如果选择了多个项目,它将返回一个值数组。对于不同的场景,
typeof list
会得到什么?您得到了。typeof返回了一个字符串,如果只包含一个项目。如果返回了多个项目,它就是一个对象(数组).谢谢,文档不是最好的..............................................可能是相关的.谢谢,布鲁斯!太好了。
list = formObject.listElement.getChoices();
var list = formObject.listElement;
if (!Array.isArray(list)) list = [list];