Php $\u对于多个选择框,POST返回空

Php $\u对于多个选择框,POST返回空,php,select,post,options,Php,Select,Post,Options,好的,我正在通过javascript用另一个选择框中的选项填充我的多个选择框,如下所示: function addAction() { var actions = document.getElementById("actions"); var action_list = document.getElementById("actions_list"); var opt = document.createElement("option"); for (var i=0;

好的,我正在通过javascript用另一个选择框中的选项填充我的多个选择框,如下所示:

function addAction()
{
    var actions = document.getElementById("actions");
    var action_list = document.getElementById("actions_list");
    var opt = document.createElement("option");
    for (var i=0; i<action_list.options.length; i++)
    {
        if (action_list.options[i].text == actions.options[actions.selectedIndex].text)
            return;
    }
    action_list.options.add(opt);
    opt.text = actions.options[actions.selectedIndex].text;
    opt.value = actions.options[actions.selectedIndex].value;
}

function removeActions()
{
    var action_list = document.getElementById("actions_list");
    for(i=action_list.options.length-1;i>=0;i--)
    {
        if (action_list.options[i].selected)
            action_list.remove(i);
    }
}
简而言之,我的$\u POST['layout\u actions']=空字符串。这是怎么回事???这应该行得通,不是吗


请帮帮我…阿格。我知道元素正在被添加,因为当我单击“添加”按钮时,我可以看到它们从一个选择框变为多个选择框,但当我发布表单时,布局操作返回空。

我尝试了简单HTML中的代码,它显示了 请求中的布局\u操作[]

我看到您在单引号中使用变量$context

所以我认为这就是为什么它不采用选择框的多重属性的原因

 echo '<select id="actions_list" name="layout_actions[]" multiple style="height: 128px; width: 300px;', (isset($context['layout_error']['no_actions']) ? ' border: 1px solid red;' : ''), '">';

“多选”框中的项目是否标记为已选?Opp,否,是否有方法不选择它们而获取它们?我明白你的意思,似乎当我选择他们的时候,它就在那里。但不管他们是否被选中,我都要把他们都抓进去。怎么做?把它们的副本放在一个隐藏的输入中。有趣的是,你这么说,我也在想,但这似乎有点草率。哦,好吧。无论如何,谢谢你:
 echo '<select id="actions_list" name="layout_actions[]" multiple style="height: 128px; width: 300px;', (isset($context['layout_error']['no_actions']) ? ' border: 1px solid red;' : ''), '">';