即使未选中,复选框值也始终会发布

时间:2013-02-07 09:32:15

标签: php magento magento-1.7

我使用以下方法在表单中添加了一个复选框:

$fieldset->addField($value, 'checkbox', array(
                    'label'     => $label,
                    'name'      => $value,
                    'checked' => false,
                    'onclick' => "",
                    'onchange' => "",
                    'value'  => $value,
                    'disabled' => false,
                    'tabindex' => 1
                ));

然后在我的控制器中我正在做:

if (isset($this->post[$value]))
                {
                    $webCategory = $this->post[$value];
                    if ($webCategory != '') {
                        Mage::log("Syncing: " . $webCategory);
                    }
                }

$this->post是页面中的Mage::app()->getRequest()->getPost()$value包含复选框的ID(所有数据都是动态的,因此我发布了代码段)。

我遇到的问题是,即使我没有勾选它们,也会始终记录复选框值。我一直以为复选框都没有发布,除非他们被勾选。我失去它还是Magento做了一些奇怪的事情?

1 个答案:

答案 0 :(得分:1)

首先检查您的浏览器:什么数据被POST?浏览器调试器的网络选项卡(例如Firebug for Firefox)会告诉您。那里的复选框数据是什么?

其次,检查HTML:是否多次定义了复选框名称?这可能是他们出现在您的POST数据中的原因。