I have this code (below)..
$.ajax
({
type: \"POST\",
url: \"../WebServices/Feedback.svc/sendfeedback\",
dataType: \'json\',
async: false,
Is the web service belong to you or do you use someone else's web service? What was the reason the web service is not accepting (, / ? : @ & = + $ #)?
jQuery $.ajax default contentType is application/x-www-form-urlencoded which mean jQuery will encode the content. However, since you have specify different contentType, the data is not encoded thus you have to do your own encoding.
Alternatively, you could try to remove the contentType option and pass in your content normally (without encodeURICompnent).
$.ajax
({
type: "POST",
url: "../WebServices/Feedback.svc/sendfeedback",
dataType: 'json',
async: false,
data: '{"stars": "' + stars + '", "rating" : "' + rating + '", "note" : "' + note + '", "code" : "' + code + '", "permission" : "' + permission + '"}',
});
pass data thru as an object instead of a string:
$.ajax
({
...
data: {stars: stars, rating: rating...(etc)}
});