title: Decode url '+' to '%20' from Form GET query parameters
body: <p>I use <em>meta-refresh</em> tag in my html page. The html page has a form. When this page is auto-refreshed, all form parameters are appended to url as HTTP GET parameter. </p>
  
  <p><strong>Problem:</strong> 
  All space characters i.e '%20' is converted to '+' automatically. But my FORM Query params may themselves have '+' characters in their content. So  </p>
  
  <ul>
  <li>How do I stop spaces replaced by '+' and go back to encoding space with '%20'?</li>
  </ul>
  
  <p>OR</p>
  
  <ul>
  <li>How do I correctly encode and decode Form params to properly differentiate between space-representing '+' and literal parameter '+' ?</li>
  </ul>
  
  <hr>
  
  <p><strong>E.G.</strong></p>
  
  <p>properTitle = "This is example for correctly decoding HTTP Form parameters space replaced with '+'"
  <em>encodeURIComponent(properTitle)</em> : 
  This%20is%20example%20for%20correctly%20decoding%20HTTP%20Form%20parameters%20space%20replaced%20with%20'%2B'</p>
  
  <p><em>escape(properTitle)</em> : This%20is%20example%20for%20correctly%20decoding%20HTTP%20Form%20parameters%20space%20replaced%20with%20%27+%27</p>
  
  <p><strong>After meta-refresh</strong>
  skewedTitle = "This+is+example+for+correctly+decoding+HTTP+Form+parameters+space+replaced+with '+'"</p>
  
  <p><em>decodeURIComponent(skewedTitle)</em> : This+is+example+for+correctly+decoding+HTTP+Form+parameters+space+replaced+with+'+</p>
  
  <p><em>escape(skewedTitle)</em> :  This+is+example+for+correctly+decoding+HTTP+Form+parameters+space+replaced+with+%27%252B%27</p>
  
  <p><strong>P.S:</strong> I have already referenced following similar questions but no help.</p>
  
  <p><a href="https://stackoverflow.com/questions/2678551/when-to-encode-space-to-plus-or-20">When to encode space to plus (+) or %20?</a></p>
  
  <p><a href="https://stackoverflow.com/questions/1211229/in-a-url-should-spaces-be-encoded-using-20-or">In a URL, should spaces be encoded using %20 or +?</a></p>
  
  <p><strong>EDIT 1:</strong>
  Thanks to @Bergi, I have solved my problem by manually encoding '+' character to '%2b' before refresh itself. After meta-refresh '%20' is converted to '+' which is different from '%2b'. Shouldn't there be a proper method to take care of such encoding and decoding ?</p>