0

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

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

我想在我的模块中的设置脚本中更新这个属性。如何做到这一点?

在此先感谢您的帮助。

4

2 回答 2

2

您必须对其进行编码。管理面板使用Prototype Validation:您可以通过使用您的验证规则创建自定义 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的管理主题中添加要加载的自定义文件。

于 2013-08-09T13:52:16.273 回答
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;
});

请参阅如何向 Magento 原型添加自定义验证

然后使用 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>
于 2013-08-09T14:00:22.760 回答