Yes, your CloseNotesDialog() function should have an

else return true;

at the end.

Then in the call you could just do it like this (no need for the extra
anonymous function):

beforeclose: CloseNotesDialog

Also, your code above was missing the comma between the options (right
after your beforeclose function and before the buttons option.

Hth,

Dave

On Nov 20, 9:08 am, Mean Mike <[email protected]> wrote:
> opps sorry I spoke a little to soon... I figured out what your doing
>
> when before returns false it prevents the dialog from closing
> so really quite opposite of what I said previously in fact its a great
> way to determine if a dialog should close or not
>
> hth
> Mike
>
> On Nov 20, 9:00 am, Mean Mike <[email protected]> wrote:
>
> > I think your confused about what beforeclose does,
>
> > beforeclose doesn't close a dialog it does whatever you put in its
> > function right after dialog('close') is called
>
> > so you would do somthing like this
>
> >   $(document).ready(function() {
> >                 $('#notesDialog').dialog({
> >                         autoOpen: false,
> >                         width: 590,
> >                         resizable: false,
> >                         draggable: false,
> >                         bgiframe: true,
> >                         modal: true,
> >                         beforeclose: function(event, ui) {
> >                                 return CloseNotesDialog();
> >                         }
> >                         buttons: {
> >                     OK: function() {
> >                         $(this).dialog('close');
> >                     }
> >                         }
> >        });
> >    });
>
> >    function CloseNotesDialog()
> >    {
> >        var subject = $('#<%= txtSubject.ClientID %>');
> >        var note = $('#<%= txtNote.ClientID %>');
>
> >        if (subject.val() != '' || note.val() != '')
> >        {
> >            var pnlNotes =  $('#<%= pnlNotes.ClientID %>');
> >            var pnlNotesConfirmation =  $('#<
> > %=pnlNotesConfirmation.ClientID %>');
>
> >            pnlNotesConfirmation.height(pnlNotes.height());
> >            pnlNotes.hide();
> >            pnlNotesConfirmation.show();
>
> >            return false;
> >        }
> >    }
>
> > and when the user clicks "OK" your CloseNoteDialog() function would be
> > called
>
> > if your trying to determine if the dialog should close or not your
> > should do that in "OK"'s funtion
>
> > Make sense ?
>
> > Mike
>
> > On Nov 19, 10:24 am, Nabeal <[email protected]> wrote:
>
> > > I'm at a loss.  I have hooked a beforeclose function, and that works
> > > fine.
> > > The issue that is killing me is when I want to close the dialog after
> > > the beforeclose returns false, nothing happens!!
> > > On the pnlNotesConfirmation there is a "No" button.  On that "No" I
> > > try to perform: $('#notesDialog').dialog('close');  No event action
> > > occurs.
>
> > > I tried the following line first: $('#notesDialog').dialog('option',
> > > 'beforeclose', function(ev, ui) {return true;});
> > > Still it doesn't close.
>
> > > The only way I got to work was by doing a destroy ($
> > > ('#notesDialog').dialog('destroy'); ) then re init the dialog.  That
> > > can't be right.  What am I doing wrong.
> > > Using 1.7.2
>
> > >     $(document).ready(function() {
> > >         $('#notesDialog').dialog({
> > >             autoOpen: false,
> > >             width: 590,
> > >             resizable: false,
> > >             draggable: false,
> > >             bgiframe: true,
> > >             modal: true,
> > >             beforeclose: function(event, ui) { return CloseNotesDialog
> > > (); }
> > >         });
> > >     });
>
> > >     function CloseNotesDialog()
> > >     {
> > >         var subject = $('#<%= txtSubject.ClientID %>');
> > >         var note = $('#<%= txtNote.ClientID %>');
>
> > >         if (subject.val() != '' || note.val() != '')
> > >         {
> > >             var pnlNotes =  $('#<%= pnlNotes.ClientID %>');
> > >             var pnlNotesConfirmation =  $('#<%=
> > > pnlNotesConfirmation.ClientID %>');
>
> > >             pnlNotesConfirmation.height(pnlNotes.height());
> > >             pnlNotes.hide();
> > >             pnlNotesConfirmation.show();
>
> > >             return false;
> > >         }
> > >     }

--

You received this message because you are subscribed to the Google Groups 
"jQuery UI" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/jquery-ui?hl=.


Reply via email to