2016-05-25 9 views
1

私はWMF(Web Form For Marketers)を使用しており、$ scw.widgetオブジェクト内にwffm.js.というカスタム関数をいくつか作成しました。問題は、その関数の1つをオブジェクトの外側に呼び出すときに、「関数が定義されていません」ということになります。WFFM - オブジェクト内の関数へのアクセス

例:

$scw.widget("wffm.track", { 
    options: { 
     formId: null, 
     fieldId: null, 
     fieldTitle: null, 
     fieldValue: null, 
     eventCount: null, 
     rules: null 
    }, 
    //Custom function 
    checkRequiredFields: function (e, element) { 
     var form = $scw(element).closest("form"); 
     if ($scw(form).find(".form-group.required-field.valid").length === $scw(form).find(".form-group.required-field").length) { 
      if ($scw(form).parents("#c-fab__brochure").length) { 
       if ($scw(form).parents("#c-fab__brochure").find(".brochure-cover").attr("data-selected") === "true") { 
        this.validForm(e, form); 
       } 

      } else { 
        this.validForm(e, form); 
      } 
     } 
    }, 
}); 

そして、私はこれを試してみました:

$scw(".parent") 
    .off("click.scw") 
    .on("click.scw", ".child", function (e) { 
      $scw.widget.checkRequiredFields(e, $scw(".child").parents(".main-parent").find("form")); 
}); 

は、次に私が取得:

$scw.widget.checkRequiredFields is not a function 

機能にアクセスするための適切な方法は何ですか?おかげさまで

答えて

0

$ scwは、jQueryのいくつかのバージョンとの競合を避けるために使用される特定のバージョンのjQueryです。 (WFFMは特定のものを必要とし、あなたのサイトは別のものを必要とする可能性があるため)。方法jQueryのウィジェットを呼び出す方法を探すためにしようと、それが解決しない場合は

$scw(".child").track("checkRequiredFields", e, ".child"); 

:その$のSCWを知る

は、私はjQueryのアプローチを使用することができ提案できるだけjQueryのです。

+0

あなたの答えをありがとう、Anton。私は最後に、別の方法でそれを解決し、_createメソッドからメソッドを呼び出しました。間違いなくこれらのメソッドを呼び出す方法を見なければなりません。 –

関連する問題