php - 如何设置表单字段的默认值-Magento?

标签 php magento

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

$fieldset->addField('ajax_time_interval', 'text', array(
          'label'     => Mage::helper('dealroom')->__('Page Refresh Time Interval'),
          'class'     => 'required-entry',
          'required'  => true,
          'name'      => 'ajax_time_interval',
      ));

我需要为此文本字段设置一个默认值。我试过,在其中设置“值”=>“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', 
      ));

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

最佳答案

在我的例子中,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());

关于php - 如何设置表单字段的默认值-Magento?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14727009/

相关文章:

javascript - IE 抛出 JavaScript TypeError 但不是在 chrome 上

php - 从具有 "AUTO_INCREMENT"的字段中获取未使用的 id - mysql

php - 您可以访问 iframe 加载外部网站的内容吗?

javascript - PHP循环与1显示和隐藏在div功能

mysql - 根据另一列中的数据更新 MySQL 表行

Magento 如何缓存 productCollection

java - 如何使用 Windows 应用程序从网络服务器访问数据

php - 无法使用 jquery 将 xml 数据发布到服务器端(php)

magento - 使用可配置产品创建 Magento 捆绑或组合产品

php - Mage_Paypal_Block_Express_Shortcut 中的 getShortcutHtmlId() 在哪里?