Single quotes in string with jQuery ajax

You need to escape the quotes with a \ or depending on how you plan to use the string you can use the javascript escape and unescape functions.

alert(escape("mike's"));
alert(unescape(escape("mike's")));

Also check this out for ways to escape strings with jQuery


For escaping values in AJAX request, Do not write your own implementation of escape or use escape() method. (escape() is deprecated). Instead create a JSON object and use JSON.stringify method.

For your case it should be like (ignoring dynamic property for now):

//Create Javascript object    
var obj = { SectionName: UpdateText, EntityID: EntityID };

Later in your ajax request you can do :

data: JSON.stringify(obj),

If you want to use dynamic properties with your JSON object then for your particular case you can create the object in two steps like:

var obj = { EntityID: EntityID };
obj["str_" + sectionName] = UpdateText;

This practice will save you from manually escaping single/double quotes and other invalid characters. JSON.stringify will take care of that.

(I came here looking for a somewhat similar issue, but couldn't find a suitable working solution, so ended up posting one here)