diff options
Diffstat (limited to 'dev/jquery.jtable.creation.js')
-rw-r--r-- | dev/jquery.jtable.creation.js | 39 |
1 files changed, 25 insertions, 14 deletions
diff --git a/dev/jquery.jtable.creation.js b/dev/jquery.jtable.creation.js index 2121e4e..ddb6624 100644 --- a/dev/jquery.jtable.creation.js +++ b/dev/jquery.jtable.creation.js @@ -39,6 +39,11 @@ *************************************************************************/ _create: function () { base._create.apply(this, arguments); + + if (!this.options.actions.createAction) { + return; + } + this._createAddRecordDialogDiv(); }, @@ -47,11 +52,6 @@ _createAddRecordDialogDiv: function () { var self = this; - //Check if createAction is supplied - if (!self.options.actions.createAction) { - return; - } - //Create a div for dialog and add to container element self._$addRecordDiv = $('<div />') .appendTo(self._$mainContainer); @@ -75,13 +75,7 @@ id: 'AddRecordDialogSaveButton', text: self.options.messages.save, click: function () { - var $saveButton = $('#AddRecordDialogSaveButton'); - var $addRecordForm = self._$addRecordDiv.find('form'); - - if (self._trigger("formSubmitting", null, { form: $addRecordForm, formType: 'create' }) != false) { - self._setEnabledOfDialogButton($saveButton, false, self.options.messages.saving); - self._saveAddRecordForm($addRecordForm, $saveButton); - } + self._onSaveClickedOnCreateForm(); } }], close: function () { @@ -111,6 +105,18 @@ }); } }, + + _onSaveClickedOnCreateForm: function () { + var self = this; + + var $saveButton = $('#AddRecordDialogSaveButton'); + var $addRecordForm = self._$addRecordDiv.find('form'); + + if (self._trigger("formSubmitting", null, { form: $addRecordForm, formType: 'create' }) != false) { + self._setEnabledOfDialogButton($saveButton, false, self.options.messages.saving); + self._saveAddRecordForm($addRecordForm, $saveButton); + } + }, /************************************************************************ * PUBLIC METHODS * @@ -192,7 +198,7 @@ var self = this; //Create add new record form - var $addRecordForm = $('<form id="jtable-create-form" class="jtable-dialog-form jtable-create-form" action="' + self.options.actions.createAction + '" method="POST"></form>'); + var $addRecordForm = $('<form id="jtable-create-form" class="jtable-dialog-form jtable-create-form"></form>'); //Create input elements for (var i = 0; i < self._fieldList.length; i++) { @@ -234,6 +240,11 @@ self._makeCascadeDropDowns($addRecordForm, undefined, 'create'); + $addRecordForm.submit(function () { + self._onSaveClickedOnCreateForm(); + return false; + }); + //Open the form self._$addRecordDiv.append($addRecordForm).dialog('open'); self._trigger("formCreated", null, { form: $addRecordForm, formType: 'create' }); @@ -248,7 +259,7 @@ $addRecordForm.data('submitting', true); self._submitFormUsingAjax( - $addRecordForm.attr('action'), + self.options.actions.createAction, $addRecordForm.serialize(), function (data) { |