¿Cómo puedo obtener el valor seleccionado en múltiples desplegables en el formulario de administración
-
13-12-2019 - |
Pregunta
Código:
$fieldset->addField('race', 'multiselect', array(
'label' => Mage::helper('tuition')->__('Race'),
'values' => Example_Tuition_Block_Adminhtml_Student_Grid::getValueArray4(),
'name' => 'race',
"class" => "required-entry",
"required" => true,
));
en grid.php
static public function getOptionArray4()
{
$data_array=array();
$data_array[0]='Indian';
$data_array[1]='Chinese';
$data_array[2]='Malay';
$data_array[3]='Eurasian';
$data_array[4]='Others';
return($data_array);
}
static public function getValueArray4()
{
$data_array=array();
foreach(Example_Tuition_Block_Adminhtml_Tutor_Grid::getOptionArray4() as $k=>$v){
$data_array[]=array('value'=>$k,'label'=>$v);
}
return($data_array);
}
y guardar datos como este
$post_data['race'] = implode(',',$post_data['race']); // 0,1,2,3
Ahora quiero obtener el valor seleccionado en el formulario de administración ¿Cómo puedo hacer esto
Aquí quiero seleccionar ese valor que se guarda en la base de datos, pero estoy recibiendo solo un valor seleccionado
Solución
en form.php
Aquí puede establecer el valor
if (Mage::getSingleton("adminhtml/session")->getStudentData())
{
$data = Mage::getSingleton('adminhtml/session')->getStudentData();
$data['race'] = isset($data['race']) ? explode(',', $data['race']) : array(); // using this you can get value of multiple dropdown selected
$form->setValues($data);
Mage::getSingleton("adminhtml/session")->setStudentData(null);
}
elseif(Mage::registry("student_data")) {
$data = Mage::registry('student_data')->getData();
$data['race'] = isset($data['race']) ? explode(',', $data['race']) : array(); // using this you can get value of multiple dropdown selected
$form->setValues($data);
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a magento.stackexchange