javascript - Magento - 表单上的自定义验证不起作用

标签 javascript jquery validation magento

我正在尝试为我的一家商店进行表单翻译。

为此,我使用了教程:http://blog.baobaz.com/en/tag/magento-translation

所以我创建了自己的 javascript 文件并更新了 local.xml

各部分代码如下:

if(Validation) {                    
Validation.addAllThese([      
    [
        'welsh-required',                                           
        'Mae\'n rhaid llenwi\'r blwch hwn',   
        function(v,r){ return v.indexOf('valid')==-1?false:true }   
    ],
    [
        'welsh-email',                                              
        'Rhowch gyfeiriad ebost dilys yma.',   
        function(v,r){ return v.indexOf('valid')==-1?false:true }   
    ],
])
}

我在本地 xml 的 head 引用中添加此代码的代码是:

<action method="addItem">
            <type>skin_js</type>
            <name>js/myvalidation.js</name>
</action>

尝试使用此功能的一个示例是忘记密码表单。我使用带有我创建的类名的代码:

<?php if (Mage::app()->getStore()->getId() == 1): ?>
                    <input type="text" name="email" alt="email" id="email_address" class="input-text required-entry validate-email" value="<?php echo $this->htmlEscape($this->getEmailValue()) ?>" />
                <?php else: ?>
                    <input type="text" name="email" alt="email" id="email_address" class="welsh-required required-entry welsh-email" value="<?php echo $this->htmlEscape($this->getEmailValue()) ?>" />
<?php endif; ?>

验证确实显示新文本(但不像原始验证那样将两个验证一起显示)。即使输入了正确的数据,表单也不会发送。

非常感谢任何帮助。

最佳答案

我猜条件 if(Validation) { 不成立。
尝试将其包装到 document.observe("dom:loaded", function() {} 条件中。

关于javascript - Magento - 表单上的自定义验证不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14975911/

相关文章:

javascript - 谷歌 API V3 : computeOffset function

javascript - 如何使用javascript记录一次点击以更改下一页的内容

jquery - 在jQgrid中实现删除

javascript - 实体名称必须紧跟在实体引用 AngularJs Validation 中的 '&' 之后

javascript - 如何使用 npm 脚本运行 mocha?

JavaScript:对象的方法未被识别;为什么不?

Javascript jQuery ajax 提交默认数据

jquery - 如何获取绑定(bind)了 'click'事件的选择器?

javascript - 如何在 Angular 中基于一个 http 调用进行多次验证

swift - 如何使用 RxSwift 观察 UITextField 中的输入变化?