0

次を使用して、フォームにチェックボックスを追加しています。

$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は何か奇妙なことをしていますか?

4

1 に答える 1

1

まずブラウザを確認してください:どのデータがPOSTされますか?ブラウザのデバッガ(FirefoxのFirebugなど)のネットワークタブに表示されます。チェックボックスのデータはそこにありますか?

次に、HTMLを確認します。チェックボックス名は複数回定義されていますか?これが、POSTデータに表示される理由である可能性があります。

于 2013-02-07T09:37:02.467 に答える