When you update jQuery to 1.3+ from an older version, you also have to
update your UI library to 1.7+ because jQuery 1.3+ is not compatible
with older versions of jQuery UI.

On Jun 22, 5:25 am, Etienne Robillard <robillard.etie...@gmail.com>
wrote:
> Hi,
>
> I'm using jquery-ui 1.6 custom build with jquery 1.2.6 trying to
> set up a dialog window. Unfortunately I can't update to 1.3.2 since this
> would trigger some unexpected XHR-related bugs like the following:
>
> Exception ``TypeError: M.xhr is not a function'' thrown from function
> anonymous(M=Object:{12}) in
> <http://localhost/media/js/jquery/jquery-1.3.2.min.js>
>
> So I'm sticking with the 1.2.6 build, which works fine despite a
> minor/not-critical XHR issue:
>
> Exception ``TypeError: s.accepts is undefined'' thrown from function
> anonymous(s=Object:{12}) in
> <http://localhost/media/js/jquery/jquery-1.2.6.pack.js>
>
> Notice that this error is reported in FireBug/Venkman, however Firefox
> doesn't seem to care and let the XMLHTTPRequest to execute successfully.
>
> The code for the dialog window is given below. I don't seem to
> understand why posted data cannot be shown on the dialog box twice.
>
> Moreover, it will display it as I want on the first $.post request but
> any additional requests triggered with a click event don't show any
> updated data on the dialog box. Venkman reports that the anonymous
> callback function manages to obtain the updated data, but still nothing
> get shown on the dialog, just an empty div... ;-)
>
> Any help or advices for debugging this issue?
>
> Best regards,
> Etienne
>
> This is the script that gets evaluated by jQuery (using $.get(...)). A
> json object is returned by the server either containing form validation
> errors or a result object that contains simple strings.
>
> <script type="text/javascript">
> $(function(){
>
> $('#'+'formControlBtn').bind('click', function(){
>     //send the form with a ajax request. on success,
>     //return a "comment" preview.
>     var formData = $('#'+'commentform').serialize();
>
>     //one-liner to remove old error messages before posting a new comment
>     $('p.error').each(function(){$(this).remove()});
>
>     $.post('comment', formData, function(json) {
>         var result = json.errordict || json.comment;
>
>         if (result == json.comment) {
>             // Look for the comment preview..
>             // Display a pop-up window (dialog) with the comment preview
>             // in HTML. By clicking on "OK" or "Save" the user has no more
>             // undo chances and the comment will be made.
>             var commentHTMLDialog = $('<div id="commentDialog"
> class="ui-dialog ui-widget ui-content"><\/div>');
>
>             // Set a title
>             $(commentHTMLDialog).attr('title', 'Preview comment');
>
>             // Setup default dialog constructor options
>             $(commentHTMLDialog).dialog({
>                 autoOpen: true,
>                 bgiframe: false, // must keep this for IE6? default =
> 'dont care'
>                 width: 500,
>                 modal: true,     // prevent reposting while the dialog
> is enabled
>                 dialogClass: 'generic',
>                 height: 400,
>                 overlay: {
>                     backgroundColor: '#000',
>                     opacity: 0.5
>                 },
>                 buttons: {
>                     "It's all good, add my comment please." : function() {
>                             $(this).dialog('close');
>                      },
>                      Cancel: function() {
>                             $(this).dialog('close');
>                      }
>                 },
>                 open: function() {
>                     // Constructor to define what to do when opening
>                     // the dialog widget
>                     var commentHTMLBody = $("<ul
> id='commentHTMLBody'></ul>");
>                     $(commentHTMLBody).prependTo($(commentHTMLDialog));
>                     for (var x in result) {
>                         // create the "template" on the fly
>                         $('<li>'+x+':
> '+result[x]+'<\/li>').appendTo('#'+'commentHTMLBody');
>                     };
>
>                 } //open
>                 });
>
>                 $(commentHTMLDialog).dialog('open');
>                 return false;
>                 //$('#'+'commentForm').html('Thanks for your input!');
>         } else {
>             // found some validation errors
>             for (var x in result) {
>                 $('<p class="error">'+'<b>'+x+':
> <\/b>'+result[x]+'<\/p>').appendTo('#'+'commentForm');
>             };
>         };
>     }, "json");
>     return false;
>     });});
>
> </script>
>
> --
> Etienne Robillard <robillard.etie...@gmail.com>
> Green Tea Hackers Club <http://gthc.org/>
> Blog: <http://gthc.org/blog/>
> PGP Fingerprint: AED6 B33B B41D 5F4F A92A  2B71 874C FB27 F3A9 BDCC

Reply via email to