ビュー全体で JavaScript の一部をクリーンアップしようとしています。やりたいことの 1 つは、jQuery 検証コードを外部スクリプト関数に移動し、処理/検証する必要があるフィールドへの参照を渡すことです。私が直面している問題は、jQuery Validate の rules フィールドの署名がどのようにフォーマットされているかに関するものです。
$("#form").validate({
rules: {
txtNoSpam: {
remote: WebSettings.SpamFilterValidationUrl
}
},
messages: {
txtNoSpam: {
remote: "Answer is incorrect."
}
},
});
上記のコードでは、「txtNoSpam」は txtNoSpam というページ上の要素に直接マップされますが、むしろ txtNoSpam を初期化関数にオブジェクトとして渡し、提供されたオブジェクトの要素名をパラメーターとして使用して検証を正しいフィールドにマップします。名前:
function Init(form, field1)
form.validate({
rules: {
field1.attr('name'): {
remote: WebSettings.SpamFilterValidationUrl
}
},
messages: {
field1.attr('name'): {
remote: "Answer is incorrect."
}
},
});
}
これを達成する方法はありますか?