Magento で validation.js を拡張して、完全なフォームではなく単一の要素を検証する機能を追加することは可能ですか。
不可能な場合、validation.js スクリプトをカスタマイズする最も目立たない方法は何ですか?
Magento で validation.js を拡張して、完全なフォームではなく単一の要素を検証する機能を追加することは可能ですか。
不可能な場合、validation.js スクリプトをカスタマイズする最も目立たない方法は何ですか?
最初の質問よりも Francesco へのコメントで提供された詳細に基づいています - 個々のフォーム要素 onblur の検証が必要な場合は、Validation オブジェクトの 'immediate' プロパティを true に設定する必要があります...
Validation.defaultOptions.immediate = true;
これにより、要素の値が変更されてフォーカスが失われた場合に検証が行われます。
これはサイト全体の変更であると考えています。通常、このテーマ js ファイルのようなコードを配置しますが、代わりにスクリプト タグで囲むことで (明らかにフォーム オブジェクトが初期化される前に) テンプレートに配置することもできます。
<script type="text/javascript">
Validation.defaultOptions.immediate = true;
<script>
以下のようなコンテンツで CMS ブロックを作成し、チェックアウト ページを設定するウィジェットを追加します。
<script type="text/javascript">
$$('.validate-michael-jackson').first().observe('blur', function(elem){
if (elem.value == 'Michael Jackson') {
alert('Come on baby! Are you really Michael Jackson?');
}
});
</script>
これを見てください: リンク
私が覚えていることによると、validation.js クラスを拡張することで、.phtml ファイルに新しい検証を簡単に追加できます。