私が取り組んでいるプロジェクトのために、独自の jQuery フォームバリデーターを展開しています。入力要素の data-validate で必要な検証の種類を定義しています。
プラグインを呼び出す前に、この検証関数がプラグインに存在するかどうかを確認したい (すべてプラグイン自体内)。
私が使用する前に:
if($.isFunction(window['functionName']))
window['functionName']();
ただし、これは私のプラグイン内では機能しないようです:
(function( $ ) {
$.fn.validateForm = function(options) {
...
findInputs();
function validateRequired(input) {
}
function findInputs() {
...
if($(this).attr("data-validate"))
{
// Get list of required validation functions
var toValidate = $(this).attr("data-validate").split(/\s+/);
for(var i = 0; i < toValidate.length; i++) {
// Hardcoded function name call for testing
if($.isFunction(window['validateRequired']))
window['validateRequired']();
}
}
}
}