Aggiungi proprietà personalizzate al campo del modulo Adminhtml
-
12-12-2019 - |
Domanda
Voglio avere alcune proprietà personalizzate aggiunte a un modulo nella sezione di amministrazione.Il mio codice è il seguente.
$fieldset->addField('customer_ids', 'multiselect', array(
'name' => 'customer_ids[]',
'label' => Mage::helper('salesrule')->__('Customers'),
'title' => Mage::helper('salesrule')->__('Customers'),
'required' => true,
'values' => $allcustomers,
'class' =>'chosen-select',
'style' => 'width: 700px',
'tabindex' => '10',
'data-placeholder' => 'Select customer...,'
));
.
Non funziona per i seguenti due attributi,
'tabindex' => '10',
'data-placeholder' => 'Select customer...,'
. Soluzione
Guarda Varien_Data_Form_Element_Multiselect
.
Ecco l'elenco degli attributi HTML consentiti:
public function getHtmlAttributes()
{
return array('title', 'class', 'style', 'onclick', 'onchange', 'disabled', 'size', 'tabindex');
}
.
È necessario creare la classe che estenderà Varien_Data_Form_Element_Multiselect
e si dovrebbe riscrivere il metodo getHtmlAttributes
Aggiunta di nuovi attributi di cui hai bisogno.
Quindi prima di aggiungere il campo al modulo Scrivi questo:
$fieldset->addType('extended_multiselect','MyCompany_MyModule_Lib_Varien_Data_Form_Element_ExtendedMultiSelect');
.
e dopo
$fieldset->addField('customer_ids', 'extended_multiselect', array( ...
. Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a magento.stackexchange