[英]Checkbox value always getting posted even when not checked
我正在使用以下方法在我的表单中添加一个复选框:
$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做一些奇怪的事情?
首先检查您的浏览器:发布了哪些数据? 浏览器的调试器(例如Firefox的Firebug)的“网络”标签会告诉您。 复选框数据在那里吗?
其次,检查HTML:复选框名称是否定义了多次? 这可能是它们出现在POST数据中的原因。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.