提交前WordPress NinjaForms JavaScript API

Nic*_*tin 7 javascript wordpress backbone.js marionette ninja-forms

我正在使用WordPress Ninja Forms,我正在尝试创建一个表单预览,在通过Ajax发送数据之前必须接受它.这意味着我需要在表单验证和提交过程之间添加自定义JS-Code.

到目前为止我尝试了以下内容:

var form_id = 1;
var PreviewFormController = Marionette.Object.extend({

  initialize: function() {
    Backbone.Radio.channel( 'form-' + form_id ).reply( 'maybe:submit', this.PreviewForm, this, form_id);
  },

  PreviewForm: function(formID){

    var formModel = nfRadio.channel( 'app' ).request( 'get:form', formID );

    if(formModel.getExtra('previewOk')){
      return true;
    }
    this.ShowPreview( formModel );
    return false;
  },

  ShowPreview: function(formModel){
    if(confirm("You sure?")){
      nfRadio.channel( 'form-' + form_id).request( 'add:extra', 'previewOk', true );
      nfRadio.channel( 'form-' + formModel.get( 'id' ) ).request( 'submit', formModel );
    }
  }
});

$(function(){
    new PreviewFormController();
});
Run Code Online (Sandbox Code Playgroud)

问题是PreviewForm现在在现场验证之前.如何在现场验证挂钩功能?

由于Codex似乎尚未准备就绪,我有点失落.如果有人能在那里帮助我,我会很高兴的.

Tim*_*man 0

我相信你想用这个

initialize: function() {
    this.listenTo( Backbone.Radio.channel( 'forms' ), 'init:model', this.PreviewForm );
},
Run Code Online (Sandbox Code Playgroud)