我正在尝试为我的一家商店进行表单翻译。
为此,我使用了教程: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/