关于javascript中 "+" 不能解决的方法

javascript中要传递把加号作为一个参数比如:+中国,传递给后台来接受。貌似不行嘞!不信你就试一下。肯定是把+替换成了空.怎么处理呢?

【1】:通过正则表达式

var key = "+中国";

var reg = /\+/g;

key = key.replace(key,"@");

然后再在后台处理下就ok了。示例:String keyword = request.getParamter("key").replaceAll("\\+","");

【2】:通过base64 编码中使用了加号(+),而 + 在 URL 传递时会被当成空格,因此必须要将 base64 编码后的字符串中的加号替换成 %2B 才能当作 URL 参数进行传递。否则在服务器端解码后就会出错。

encodeURIComponent(url).

后台中用java.net.URLEncoder.encode(s, enc);其中第一个参数代表要转码的String,第二个参数代表是什么编码。

你可能感兴趣的:(JavaScript,.net,正则表达式)