Bug Tracker

Opened 13 years ago

Closed 13 years ago

Last modified 13 years ago

#8697 closed bug (duplicate)

$.ajax fails when data contains '??'

Reported by: stuart.turner@… Owned by:
Priority: undecided Milestone: 1.next
Component: ajax Version: 1.5
Keywords: Cc:
Blocked by: Blocking:

Description

Example code:

var js = JSON.stringify({ note: 'questions?? more information' });
$.ajax({
    data: js,
    dataType: "json",
    success: function (data) { }
    error: function (XMLHttpRequest, textStatus, errorThrown) { }
});

I believe that the issue lies in ajaxPrefilter. The jsre is too aggressive and matches the first '??' it finds anywhere in the data string. The '??' gets replaced w/ an anonymous callback function name, such that the server receives the note field as:

    questionsjQuery<anonymous numbering> more information

On return from the server, the ajax call cannot find the anonymous function and goes straight to the error handling instead of calling the success function.

Change History (4)

comment:1 Changed 13 years ago by stuart.turner@…

I apologize for not using jsFiddle. Here is a test case: http://jsfiddle.net/R5g7C/

comment:2 Changed 13 years ago by Timmy Willison

Confirmed and validated json, http://jsfiddle.net/timmywil/R5g7C/3/

And switched to jQuery(edge)

Last edited 13 years ago by Timmy Willison (previous) (diff)

comment:3 Changed 13 years ago by jaubourg

Component: unfiledajax
Resolution: duplicate
Status: newclosed

comment:4 Changed 13 years ago by jaubourg

Duplicate of #8417.

Note: See TracTickets for help on using tickets.