Comment puis-je obtenir la valeur sélectionnée dans plusieurs déroulements dans le formulaire d'administrateur
-
13-12-2019 - |
Question
code:
$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,
));
dans 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);
}
et enregistrer des données comme celle-ci
$post_data['race'] = implode(',',$post_data['race']); // 0,1,2,3
Maintenant, je veux obtenir une valeur choisie dans la formulaire Admin Comment puis-je faire ceci
Ici, je veux être sélectionné cette valeur enregistrée dans la base de données, mais je ne reçois qu'une valeur sélectionnée
La solution
dans form.php
ici, vous pouvez définir la valeur
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);
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à magento.stackexchange