如何在Magento中设置日期属性的最大值?

时间:2013-08-09 12:32:14

标签: magento attributes adminhtml

我想设置客户的“出生日期”(dob)属性的最大值。

我想比今天(不是将来)更早地设置此日期。更改后,我想在客户编辑屏幕上的adminhtml后端进行JS验证。

我想在我的模块中的安装脚本中更新此属性。怎么做到这一点?

提前感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

你必须编码。管理面板使用原型验证:您可以使用以下格式创建包含验证规则的自定义JS文件进行扩展:

 if(Validation) {
   Validation.add AllThese ([
    ['validate-dob',    // class/rule name
     'DOB cannot be in the future',  // Error message
      function (v) {
         //  TODO: validation of input, 'v' being the input.
         // return true (input is ok) or false
     }]
      // more rules here, if needed..
  ])};

然后将'validate-dob'类动态添加到客户dob输入字段。您也可以在此文件中执行此操作。 在 adminhtml默认布局 main.xml中添加要加载到管理主题中的自定义文件。

答案 1 :(得分:2)

您可以创建自己的自定义验证

var theForm = new VarienForm('theForm', true);
Validation.add('validate-dob','You failed to enter baz!',function(the_field_value){
    if(check date)
    {
        return true;
    }
    return false;
});

请参阅How to add a custom validation to Magento prototype

然后使用local.xml包含js文件

 <adminhtml_sales_order_view>
    <reference name="head">
        <action method="addItem"><type>skin_js</type><name>path/to/validation_dob.js</name></action>
    </reference>
</adminhtml_sales_order_view>