Bug Tracker

Opened 11 years ago

Closed 11 years ago

Last modified 11 years ago

#8697 closed bug (duplicate)

$.ajax fails when data contains '??'

Reported by: [email protected] 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 11 years ago by [email protected]

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

comment:2 Changed 11 years ago by timmywil

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

And switched to jQuery(edge)

Last edited 11 years ago by timmywil (previous) (diff)

comment:3 Changed 11 years ago by jaubourg

Component: unfiledajax
Resolution: duplicate
Status: newclosed

comment:4 Changed 11 years ago by jaubourg

Duplicate of #8417.

Note: See TracTickets for help on using tickets.