最近、MVC プロジェクト内のクライアント側でチェックボックスの検証を機能させることについて質問がありました。この質問への回答は成功しましたが、別の質問が発生しました。
チェックボックスの検証を機能させるには、次の JavaScript を jquery.validate.unobtrusive.js に直接追加する必要がありました。
$jQval.addMethod("mustbetrue", function (value, element, param) {
// check if dependency is met
if (!this.depend(param, element))
return "dependency-mismatch";
return element.checked;
});
adapters.add("mustbetrue", function (options) {
setValidationValues(options, "mustbetrue", true);
});
これはうまくいきましたが、Microsoftまたは検証プラグインの少年たちが将来ファイルを更新する場合に備えて、このファイルを変更する必要があることに不満です. 私がまだプロジェクトに取り組んでいない場合、このファイルはカスタマイズされていることに気付かないうちに上書きされる可能性があります。
そのことを念頭に置いて、これを外部のjavascriptファイルに追加しようとしました:
$.validator.addMethod("mustbetrue", function (value, element, param) {
// check if dependency is met
if (!this.depend(param, element))
return "dependency-mismatch";
return element.checked;
});
$.validator.unobtrusive.adapters.add("mustbetrue", function (options) {
setValidationValues(options, "mustbetrue", true);
});
残念ながら、チェックボックスのクライアント側スクリプトが実行されません。誰かが私が間違っていることを見ることができますか?
前もって感謝します
S