Magento Adminhtml Form

开发Magento后台的时候经常用到表单(Varien_Data_Form),下面是所有表单元素的添加方法:

非必填 注释掉

Java代码  

  1. 'class'     => 'required-entry',  
  2. 'required'  => true,  

1.input type='text'

Java代码  

  1. $fieldset->addField('title', 'text', array(  
  2.     'label'     => 'Title3',  
  3.     'class'     => 'required-entry',  
  4.     'required'  => true,  
  5.     'name'      => 'title',  
  6.     'onclick' => 'alert("on click");',  
  7.     'onchange' => 'alert("on change");',  
  8.     'style'   => 'border:10px',  
  9.     'value'  => 'hello !!',  
  10.     'disabled' => false,  
  11.     'readonly' => true,  
  12.     'after_element_html' => 'Comments',  
  13.     'tabindex' => 1  
  14. ));  

 2.Time时间类型

Java代码  

  1. $fieldset->addField('time', 'time', array(  
  2.     'label'     => 'Time',  
  3.     'class'     => 'required-entry',  
  4.     'required'  => true,  
  5.     'name'      => 'title',  
  6.     'onclick' => '',  
  7.     'onchange' => '',  
  8.     'value'  => '12,04,15',  
  9.     'disabled' => false,  
  10.     'readonly' => false,  
  11.     'after_element_html' => '<script src="js/extjs/ext-tree.js" type="text/javascript">',  
  12.     'tabindex' => 1  
  13. ));  

3.textarea

Java代码  

  1. $fieldset->addField('textarea', 'textarea', array(  
  2.     'label'     => 'TextArea',  
  3.     'class'     => 'required-entry',  
  4.     'required'  => true,  
  5.     'name'      => 'title',  
  6.     'onclick' => '',  
  7.     'onchange' => '',  
  8.     'value'  => '<b><b/>',  
  9.     'disabled' => false,  
  10.     'readonly' => false,  
  11.     'after_element_html' => '<small>Comments</small>',  
  12.     'tabindex' => 1  
  13. ));  

4.input type='submit'

Java代码  

  1. $fieldset->addField('submit', 'submit', array(  
  2.     'label'     => 'Submit',  
  3.     'required'  => true,  
  4.     'value'  => 'Submit',  
  5.     'after_element_html' => '',    
  6.     'tabindex' => 1  
  7. ));  

5.select option

Java代码  

  1. $fieldset->addField('select', 'select', array(  
  2.     'label' => '页面样式',  
  3.     'class' => 'required-entry',  
  4.     'required' => true,  
  5.     'name' => 'skin',  
  6.     'onclick' => '',  
  7.     'onchange' => '',  
  8.     'value' => '1',  
  9.     'values' => array('-1' => '请选择', '1' => '红', '2' => '蓝'),  
  10.     'disabled' => false,  
  11.     'readonly' => false,  
  12.     'after_element_html' => '',  
  13.     'tabindex' => 1  
  14. ));  

 6.带optgroup的select

Java代码  

  1. $fieldset->addField('select2', 'select', array(  
  2.     'label' => 'Select Type2',  
  3.     'class' => 'required-entry',  
  4.     'required' => true,  
  5.     'name' => 'title',  
  6.     'onclick' => '',  
  7.     'onchange' => '',  
  8.     'value' => '4',  
  9.     'values' => array(  
  10.         '-1' => 'Please Select..',  
  11.         '1' => array(  
  12.             'value' => array(array('value' => '2', 'label' => 'Option2'), array  
  13.             ('value' => '3', 'label' => 'Option3')),  
  14.             'label' => 'Size'  
  15.         ),  
  16.         '2' => array(  
  17.             'value' => array(array('value' => '4', 'label' => 'Option4'), array  
  18.             ('value' => '5', 'label' => 'Option5')),  
  19.             'label' => 'Color'  
  20.         ),  
  21.     ),  
  22.     'disabled' => false,  
  23.     'readonly' => false,  
  24.     'after_element_html' => '',  
  25.     'tabindex' => 1  
  26. ));  

 7.单选框input type='radio'

Java代码  

  1. $fieldset->addField('radio', 'radio', array(  
  2.     'label' => 'Radio',  
  3.     'name' => 'title',  
  4.     'onclick' => '',  
  5.     'onchange' => '',  
  6.     'value' => '1',  
  7.     'disabled' => false,  
  8.     'readonly' => false,  
  9.     'after_element_html' => '',  
  10.     'tabindex' => 1  
  11. ));  
  12. $fieldset->addField('radio2', 'radios', array(  
  13.     'label' => 'Radios',  
  14.     'name' => 'title',  
  15.     'onclick' => '',  
  16.     'onchange' => '',  
  17.     'value' => '2',  
  18.     'values' => array(  
  19.         array('value' => '1', 'label' => 'Radio1'),  
  20.         array('value' => '2', 'label' => 'Radio2'),  
  21.         array('value' => '3', 'label' => 'Radio3'),  
  22.     ),  
  23.     'disabled' => false,  
  24.     'readonly' => false,  
  25.     'after_element_html' => '',  
  26.     'tabindex' => 1  
  27. ));  

8.Password元素 input type='password

Java代码  

  1. $fieldset->addField('password', 'password', array(  
  2.     'label' => Mage::helper('form')->__('Password'),  
  3.     'class' => 'required-entry',  
  4.     'required' => true,  
  5.     'name' => 'title',  
  6.     'onclick' => '',  
  7.     'onchange' => '',  
  8.     'style' => '',  
  9.     'value' => 'hello !!',  
  10.     'disabled' => false,  
  11.     'readonly' => false,  
  12.     'after_element_html' => '',  
  13.     'tabindex' => 1  
  14. ));  
  15.   
  16. $fieldset->addField('obscure', 'obscure', array(  
  17.     'label' => Mage::helper('form')->__('Obscure'),  
  18.     'class' => 'required-entry',  
  19.     'required' => true,  
  20.     'name' => 'obscure',  
  21.     'onclick' => '',  
  22.     'onchange' => '',  
  23.     'style' => '',  
  24.     'value' => '123456789',  
  25.     'after_element_html' => '',  
  26.     'tabindex' => 1  
  27. ));  

9.Note

Java代码  

  1. $fieldset->addField('note', 'note', array(  
  2.     'text'     => Mage::helper('form')->__('Text Text'),  
  3. ));  

 10.Multiselect复选框

Java代码  

  1. $fieldset->addField('multiselect2', 'multiselect', array(  
  2.     'label' => Mage::helper('form')->__('Select Type2'),  
  3.     'class' => 'required-entry',  
  4.     'required' => true,  
  5.     'name' => 'title',  
  6.     'onclick' => 'return false;',  
  7.     'onchange' => 'return false;',  
  8.     'value' => '4',  
  9.     'values' => array(  
  10.         '-1' => array('label' => 'Please Select..', 'value' => '-1'),  
  11.         '1' => array(  
  12.             'value' => array(array('value' => '2', 'label' => 'Option2'), array  
  13.             ('value' => '3', 'label' => 'Option3')),  
  14.             'label' => 'Size'  
  15.         ),  
  16.         '2' => array(  
  17.             'value' => array(array('value' => '4', 'label' => 'Option4'), array  
  18.             ('value' => '5', 'label' => 'Option5')),  
  19.             'label' => 'Color'  
  20.         ),  
  21.     ),  
  22.     'disabled' => false,  
  23.     'readonly' => false,  
  24.     'after_element_html' => ' ',  
  25.     'tabindex' => 1  
  26. ));  

11.Multiline

Java代码  

  1. $fieldset->addField('multiline', 'multiline', array(  
  2.     'label' => Mage::helper('form')->__('Multi Line'),  
  3.     'class' => 'required-entry',  
  4.     'required' => true,  
  5.     'name' => 'title',  
  6.     'onclick' => '',  
  7.     'onchange' => '',  
  8.     'style' => 'border:10px',  
  9.     'value' => 'hello !!',  
  10.     'disabled' => false,  
  11.     'readonly' => true,  
  12.     'after_element_html' => '',  
  13.     'tabindex' => 1  
  14. ));  

12.Link 链接

Java代码  

  1. $fieldset->addField('link', 'link', array(  
  2.     'label'     => Mage::helper('form')->__('Link'),  
  3.     'style'   => '',  
  4.     'href' => 'www.excellencemagentoblog.com',  
  5.     'value'  => 'Magento Blog',  
  6.     'after_element_html' => ''  
  7. ));  

13.普通Label

Java代码  

  1. $fieldset->addField('label', 'label', array(  
  2.     'value' => Mage::helper('form')->__('Label Text'),  
  3. ));  

14.Image Upload图片上传

Java代码  

  1. $fieldset->addField('image', 'image', array(  
  2.     'value' => 'http://www.test.com//images/logo.png',  
  3. ));  

15.File Upload文件上传

Java代码  

  1. $fieldset->addField('file', 'file', array(  
  2.     'label'     => Mage::helper('form')->__('Upload'),  
  3.     'value'  => 'Uplaod',  
  4.     'disabled' => false,  
  5.     'readonly' => true,  
  6.     'after_element_html' => '',    
  7.     'tabindex' => 1  
  8. ));  

16.日期Date

Java代码  

  1. $fieldset->addField('date_expires', 'date', array(  
  2.     'name'   => 'date_expires',  
  3.     'label'  => '过期时间',  
  4.     'title'  => '过期时间',  
  5.     'image'  => $this->getSkinUrl('images/grid-cal.gif'),  
  6.     'input_format' => Varien_Date::DATE_INTERNAL_FORMAT,  
  7.     'format'       => Mage::app()->getLocale()->getDateFormat(Mage_Core_Model_Locale::FORMAT_TYPE_MEDIUM)  
  8. ));  

17.Checkbox

Java代码  

  1. $fieldset->addField('checkbox', 'checkbox', array(  
  2.     'label' => Mage::helper('form')->__('Checkbox'),  
  3.     'name' => 'Checkbox',  
  4.     'checked' => false,  
  5.     'onclick' => '',  
  6.     'onchange' => '',  
  7.     'value' => '1',  
  8.     'disabled' => false,  
  9.     'after_element_html' => '',  
  10.     'tabindex' => 1  
  11. ));  
  12. $fieldset->addField('checkboxes', 'checkboxes', array(  
  13.     'label' => Mage::helper('form')->__('Checkboxs'),  
  14.     'name' => 'Checkbox',  
  15.     'values' => array(  
  16.         array('value' => '1', 'label' => 'Checkbox1'),  
  17.         array('value' => '2', 'label' => 'Checkbox2'),  
  18.         array('value' => '3', 'label' => 'Checkbox3'),  
  19.     ),  
  20.     'onclick' => '',  
  21.     'onchange' => '',  
  22.     'value' => '1',  
  23.     'disabled' => false,  
  24.     'after_element_html' => '',  
  25.     'tabindex' => 1  
  26. ));  

 添加文本编辑器   js部分

Java代码  

  1. protected function _prepareLayout() {  
  2.     parent::_prepareLayout();  
  3.     if (Mage::getSingleton('cms/wysiwyg_config')->isEnabled()) {  
  4.         $this->getLayout()->getBlock('head')->setCanLoadTinyMce(true);  
  5.     }  
  6. }  

 Form

Java代码  

  1. $fieldset->addField('content', 'editor', array(  
  2.     'name'      => 'content',  
  3.     'label'     => 'Content',  
  4.     'title'     => 'Content',  
  5.     'style'     => 'height:15em',  
  6.     'config'    => Mage::getSingleton('cms/wysiwyg_config')->getConfig(),  
  7.     'wysiwyg'   => true,  
  8.     'required'  => false,  
  9. ));  
时间: 2024-10-30 11:45:53

Magento Adminhtml Form的相关文章

Magento 自定义module

 创建Magento模块 由于我在做我自己的Magento项目,我将使用我自己的项目名"App". 然后,我们要创建以下目录结构 Java代码   app/code/local/App/Shopping/Block   app/code/local/App/Shopping/Controller //controllers基类   app/code/local/App/Shopping/controllers   app/code/local/App/Shopping/etc   ap

magento 开发 -- 深入理解Magento第七章 – 自定义Magento系统配置

  第七章 – 自定义Magento系统配置 Magento拥有十分强大的后台管理系统.作为一名开发人员,这套后台管理系统可以让你的用户简单直接的配置Magento系统或者你创建的模块.和Magento的其他功能一样,你第一次使用这套管理系统的时候可能觉得很麻烦,但是一旦你上手了,你会发现它强大的功能是那么吸引人.那么让我们开始吧.我们这一章的例子依然是基于Helloworld模块. 添加系统配置文件 首先我们要为模块添加一个系统配置文件.这个文件和"config.xml"是不搭界的a

Magento 添加后台管理

后台菜单显示点击后404,如果adminhtml.xml配置正确,那是config.xml的问题 Magento Grid关联了多表后,表与表之间有相同字段出现.在后台点查询时出现报错解决用filter_index Java代码   $this->addColumn('name', array(       'header' => '返利商家',       'align' => 'right',       'width' => '50px',       'index' =&g

magento -- Magento事件一览表

Magento Module Event Name Parameters Mage Admin   admin_session_user_login_success array('user'=>$user) Mage Admin admin_session_user_login_failed array('user_name'=>$username, 'exception' => $e) Mage Admin admin_user_authenticate_after array('us

Magento 常用方法和插件

得到路径E:\ddl\Trunk\3_Development\03_Sourcecode\test.com\www\app\design\frontend\default\ddl_v2\template Java代码   Mage::getDesign()->getBaseDir(array('_area'=>'frontend','_package'=>'default','_theme'=>'ddl_v2','_type'=>'template'))   获得客户IP:

WHY YOU SHOULDN&amp;#39;T MERGE JAVASCRIPT IN MAGENTO

Most people - myself included - thought that merging all of your separate Javascript files was a healthy way to speed up the front end of your site. The logic was that by merging the files, you reduce the number of requests the browser makes when loa

Magento(社区版)自带模块解析以及在国内的使用建议一

本章开始逐个解析Magento1自带的模块,根据模块复杂度和重要性的不同,描述的方式也会有所区别,有些仅使用文字,有些会配上截图. 1.Admin 如字面意思,Admin模块是跟后台管理员相关的,具体来说,主要就是后台用户(admin_user表)和后台用户的权限管理(admin_role和admin_rule表).到1.9.2.3版本, 出于安全考虑新增了permission_variable和permission_block功能,这个就不细讲了,详见1.9.2.3的release-notes

“约定优于配置”与Magento改造尝试四之block、helper和model加载

暂定本章为这个系列最后一章,还是继续沿用模块的别名(alias)概念 <modules> <Mage_Wishlist> <version>1.6.0.0</version> <alias>wishlist</alias> </Mage_Wishlist> </modules> 看下Magento一般是怎么定义block.helper和model的别名的 <blocks> <wishlist&

“约定优于配置”与Magento

约定优于配置(convention over configuration)[1],也称作按约定编程[2],是一种软件设计范式,旨在减少软件 开发人员需做决定的数量,获得简单的好处,而又不失灵活性. 本质是说,开发人员仅需规定应用中不符约定的部分.例如,如果模型中有个名为Sale的类,那么数据库中对应的表 就会默认命名为sales.只有在偏离这一约定时,例如将该表命名为"products_sold",才需写有关这个名字的配置. 如果您所用工具的约定与你的期待相符,便可省去配置:反之,你可