How to set default value for form fields - Magento?
I have an admin form field (textbox),
$fieldset->addField('ajax_time_interval', 'text', array(
'label' => Mage::helper('dealroom')->__('Page Refresh Time Interval'),
'class' => 'required-entry',
'required' => true,
'name' => 'ajax_time_interval',
));
I need to set a default value for this textbox. I tried setting it to "value" => '120'. But it doesn't work.
$fieldset->addField('ajax_time_interval', 'text', array(
'label' => Mage::helper('dealroom')->__('Page Refresh Time Interval'),
'class' => 'required-entry',
'required' => true,
'name' => 'ajax_time_interval',
'value' => '120',
));
How do I set the defalt value in this field?
source to share
In my case, the function was setValues()
overriding the value ' I set for this field.
Cause:
In my function, _prepareForm()
I am setting the value as shown below:
$fieldset->addField('ajax_time_interval', 'text', array(
'label' => Mage::helper('dealroom')->__('Page Refresh Time Interval'),
'class' => 'required-entry',
'required' => true,
'name' => 'ajax_time_interval',
'value' => '120',
));
At the end of the function _prepareForm()
, the following line of code appeared to reset the form values:
$form->setValues($model->getData());
Decision:
Set the model data before setValues()
as shown below:
if (!$model->getId()) {
$model->setData('ajax_time_interval', '120');
}
$form->setValues($model->getData());
source to share
you can do this by adding a "default" attribute in the field config.
$fieldset->addField('ajax_time_interval', 'text', array(
'label' => Mage::helper('dealroom')->__('Page Refresh Time Interval'),
'class' => 'required-entry',
'required' => true,
'name' => 'ajax_time_interval',
'default' => '120',
));
source to share
Remove the last semicolon ....
Check this site, help me a lot:
http://www.excellencemagentoblog.com/magento-admin-form-field
Gl mf
source to share