来自表单复选框的 Coldfusion 数组

Coldfusion array from form checkbox

我正在尝试找出处理此问题的最佳方法。我有一系列带有复选框的表单字段,供人们选择 select 选项。提交后,它会将 form.optiongroups 变成一个数组。然后我检查 optiongroup 的 id 是否在数组中,并将检查的值设置为 true 以防出现表单错误我希望它们保留检查的值。这一切都很好。

如果我只有 select 一个选项,尽管它不是作为数组出现的,而只是一个常规的表单字段。有什么方法可以处理这个以确保它始终是一个数组吗?

实际上,复选框是作为列表提交的。您必须进行其他操作来创建数组。

但是,要按要求回答您的问题,您可以使用 ListToArray()。应该是这样的:

if (structkeyexists(form, 'optiongroups') { // if no boxes are checked the variable will be undefined.
    
    if (isArray(form.optiongroups) == false )
        form.optiongroups = ListToArray(form.optiongroups) 
    } else {  
        code for no boxes checked
    }

也可以通过...

param form.optiongroups = "";

form.optiongroups = ListToArray(form.optiongroups);