You're not using jQuery UI 1.7.1. You're using a custom modified version
that has replaced

.appendTo("body")

with

.appendTo("form")

in two different places inside of the jQuery UI Dialog plugin. When you
compare to 1.7.2 that has the .appendTo("body"), hence the difference in
behavior.

- Richard

On Thu, Dec 10, 2009 at 8:21 AM, Nabeal Ahmed <[email protected]> wrote:

> I have created a VERY slim sample site in ASP.NET 3.5 that exhibts the
> error.  Unfortunately, I do not have any public server I can host the
> files.  Attatched is the solution zipped [?]
>
> Let me know this is unacceptable, i'll hunt down a free public hosting
> company or something.
>
>
> On Thu, Dec 10, 2009 at 6:31 AM, Richard D. Worth <[email protected]>wrote:
>
>> I looked at the release notes for 
>> 1.7.2<http://docs.jquery.com/UI/Changelog/1.7.2#Dialog>and found 2 changes 
>> to dialog, neither of which seemed like they would've
>> caused such a regression. Would you be able to produce two live sample
>> pages, one using 1.7.1, one using 1.7.2. That would help immensely.
>>
>> - Richard
>>
>>   On Wed, Dec 9, 2009 at 8:50 AM, Nabeal Ahmed <[email protected]>wrote:
>>
>>>  No-one has anything on this?  Perhaps it's just me :-(
>>>
>>>
>>> On Fri, Dec 4, 2009 at 11:40 AM, Nabeal Ahmed <[email protected]>wrote:
>>>
>>>> I am at a loss.  This issue seems pretty serious to me.  I have a jQuery
>>>> dialog with an update panel in it.  When I use the ui script version 1.7.2
>>>> my postback events FAIL.  Works perfectly with 1.7.1.  Below is how I
>>>> created the dialog and panel.  The 'btnAddNote' is the button that is
>>>> NOT posting back with version 1.7.2
>>>>
>>>>
>>>>
>>>> <div id="notesDialog" title="Notes" style="display:none;width:590px;">
>>>>
>>>>     <asp:UpdatePanel ID="upNotes" runat="server" UpdateMode
>>>> ="Conditional" ChildrenAsTriggers="true">
>>>>
>>>>         <ContentTemplate>
>>>>
>>>>             <asp:Label ID="lblNotesErrors" runat="server"
>>>> EnableViewState="false" CssClass="ErrorMessage" EnableTheming="false"
>>>> />
>>>>
>>>>
>>>>
>>>>             <asp:Panel ID="pnlNotesConfirmation" runat="Server"
>>>> HorizontalAlign="Center" style="display:none">
>>>>
>>>>                 <br /><div>You have entered in unsaved notes.<br /><br
>>>> />Would you like to save your notes before closing this screen?</div><
>>>> br />
>>>>
>>>>                 <asp:button ID="btnYesSaveNote" runat="server" Width
>>>> ="100px" Text="Yes" OnClick="btnYesSaveNote_Click" />&nbsp;&nbsp;<input
>>>> type="button" ID="btnNoSaveNote" Width="100px" value="No" 
>>>> onclick="NotesDialog().dialog('option',
>>>> 'beforeclose', function(event, ui) {return true;});
>>>> NotesDialog().dialog('close');" />
>>>>
>>>>             </asp:Panel>
>>>>
>>>>
>>>>
>>>>             <asp:Panel ID="pnlNotes" runat="Server" Visible="true">
>>>>
>>>>                 <table style="text-align:left">
>>>>
>>>>                     <tr><td colspan="2" align="center"><asp:
>>>> RequiredFieldValidator id="reqSubject" runat="server" ErrorMessage="You
>>>> must enter a subject to add a note." ControlToValidate="txtSubject"
>>>> ValidationGroup="notes" Display="dynamic"></asp:RequiredFieldValidator
>>>> ></td></tr>
>>>>
>>>>                     <tr>
>>>>
>>>>                         <td><asp:Label id="lblSubject" runat="server"
>>>> EnableViewState="false">Subject:</asp:Label>&nbsp;</td>
>>>>
>>>>                         <td><asp:TextBox id="txtSubject" runat="server"
>>>> Width="500px" AutoCompleteType="disabled"></asp:TextBox></td>
>>>>
>>>>                     </tr>
>>>>
>>>>                     <tr><td colspan="2" align="center"><asp:
>>>> RequiredFieldValidator id="reqField" runat="server" ErrorMessage="Please
>>>> enter Note text" ControlToValidate="txtNote" ValidationGroup="notes"
>>>> Display="dynamic"></asp:RequiredFieldValidator></td></tr>
>>>>
>>>>                     <tr>
>>>>
>>>>                         <td>&nbsp;</td>
>>>>
>>>>                         <td><asp:TextBox id="txtNote" runat="server"
>>>> TextMode="MultiLine" Height="82px" Width="500px" AutoCompleteType
>>>> ="disabled"></asp:TextBox></td>
>>>>
>>>>                     </tr>
>>>>
>>>>                     <tr>
>>>>
>>>>                         <td colspan="2" align="right"><asp:Button id
>>>> ="btnAddNote" runat="server" Text="Add Note" Width="100px" OnClick
>>>> ="btnAddNote_Click" /></td>
>>>>
>>>>                     </tr>
>>>>
>>>>                 </table>
>>>>
>>>>                 <asp:HiddenField ID="hidStakeholderId" runat="server"
>>>> />
>>>>
>>>>             </asp:Panel>
>>>>
>>>>             </ContentTemplate>
>>>>
>>>>             <Triggers>
>>>>
>>>>                 <asp:AsyncPostBackTrigger ControlID="btnAddNote"
>>>> EventName="Click" />
>>>>
>>>>             </Triggers>
>>>>
>>>>     </asp:UpdatePanel>
>>>>
>>>>
>>>>
>>>>     <div id="notesControlHistory" style="display:block;width:560px">
>>>>
>>>>         <span class="H3" style="text-align:left">History</span><br />
>>>>
>>>>         <span id="spnNotesNav" style="text-align:left"></span>
>>>>
>>>>
>>>>
>>>>         <div style="height:250px;overflow:auto;overflow-x:hidden">
>>>>
>>>>             <table id="tblNotesHistory" cellpadding="0" cellspacing="0"
>>>> align="left" style="text-align:left" class="DisplayTable" width="98%">
>>>>
>>>>             </table>
>>>>
>>>>         </div>
>>>>
>>>>     </div>
>>>>
>>>> </div>
>>>>
>>>>
>>>>
>>>>
>>>> On Fri, Nov 20, 2009 at 9:28 AM, Nabeal Ahmed <[email protected]>wrote:
>>>>
>>>>> Roger on the else return true.
>>>>>
>>>>> FYI, it works even if you don't have that.
>>>>>
>>>>>   On Fri, Nov 20, 2009 at 9:17 AM, Fontzter <[email protected]> wrote:
>>>>>
>>>>>> 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]<jquery-ui%[email protected]>
>>>>>> .
>>>>>> For more options, visit this group at
>>>>>> http://groups.google.com/group/jquery-ui?hl=.
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>
>>>  --
>>> 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]<jquery-ui%[email protected]>
>>> .
>>> For more options, visit this group at
>>> http://groups.google.com/group/jquery-ui?hl=en.
>>>
>>
>>  --
>> 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]<jquery-ui%[email protected]>
>> .
>> For more options, visit this group at
>> http://groups.google.com/group/jquery-ui?hl=en.
>>
>
>  --
> 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]<jquery-ui%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/jquery-ui?hl=en.
>

--

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=en.


<<33D.gif>>

Reply via email to