I am having a problem here. When I use ajax to pass a parameter containing “+” to my controller it is being replaced by a space.
Example, I will pass value = Tom+Jerry+Garfield using ajax. When I use System.out.println() in my controller it displays Tom Jerry Garfield. I tried using other special characters I don’t seem to have a problem.
Please help. Thanks in advance.
In some
GETandPOSTrequests (most likely in the URL, or via a form), spaces are encoded as “+” (plus) symbols before they are passed to the server. You can see this behaviour if you do a normalGETrequest – you will see something likegoogle.com?q=test+exampleIf you want to pass a plus symbol via an ajax GET/POST request, you need to “urlencode” it. The URL encoded value for+is%2B.Also note:
The javascript encodeURIComponent() function can be used, as answered in:
AJAX POST and Plus Sign ( + ) — How to Encode?