3

我有一个管理表单字段(文本框),

$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'。但它不起作用。

$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', 
      ));

如何在该字段中设置默认值?

4

3 回答 3

4

就我而言,setValues()函数覆盖了我为该字段设置的“值” 。

原因:

在我的_prepareForm()函数中,我将值设置如下:

$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', 
      ));

_prepareForm()函数结束时,有以下代码行将重置表单值:

$form->setValues($model->getData());

解决方案:

功能前设置模型数据setValues()如下:

if (!$model->getId()) {
    $model->setData('ajax_time_interval', '120');
}
$form->setValues($model->getData());
于 2014-07-21T10:40:55.530 回答
1

您可以通过在字段配置中添加“默认”属性来做到这一点。

$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', 
      ));
于 2015-03-26T07:54:31.153 回答
0

去掉最后一个分号......

检查这个网站帮助我很多:

http://www.excellencemagentoblog.com/magento-admin-form-field

玻璃钢

于 2013-02-06T10:45:34.383 回答