我在zend表单中有一个无线电类型的元素。 我怎样才能得到单选按钮的形式职位的价值。以Zend表格的形式发布单选按钮值
记住我使用Zend的形式
if ($this->_request->isPost()) {
if ($form->isValid($_POST)) {
$values = $form->getValues();
}
}
我已经做了上面的代码确实是正确的方式来获得贴元素的值,但是对于单选按钮,只张贴的最后一个值那个单选按钮。 例如:我的单选按钮就像
$type = array("0"=>"0", "1"=>"1", "2"=>"2")
// add Order element
$order = $this->CreateElement('Radio', 'order');
$order->setMultiOptions($type);
$elements[] = $order;
然后后后它总是返回:为了= 2
在另一方面,如果我使用相同的代码,而JSON =假像:
// ------------------------------------------------
// prepare the form for ProductInfo
// ------------------------------------------------
$productinfo = new Form_ProductInfo();
$this->view->productinfo = $productinfo;
$this->view->productinfo->setAction($this->view->url());
$this->view->jsonEncoded = false;
然后它工作正常&挑选选定的单选按钮值。
不错,我已经这样做了,它是真正正确的方法来获取已发布元素的值,但对于单选按钮,它只会发布该单选按钮的最后一个值。 例如:我的单选按钮就像 $ type = array(“0”=>“0”,“1”=>“1”,“2”=>“2”) // add Order element $ order = $ this-> CreateElement('Radio','order'); $ order-> setMultiOptions($ type); $ elements [] = $ order; 然后在发布后总是返回:order = 2 – 2009-11-17 13:08:44
你是说即使选择0或1,它也会返回上一个值(2)吗? 如果您的意思是无线电元素的值是正常的单个值。 Radio元素允许你只选择一个要返回的元素。如果您需要获取所有可能值的列表,您必须使用复选框元素。 我用一个工作代码更新了我的答案。 – 2009-11-18 08:32:50