javascript无法发送' +'带有ajax参数的字符

时间:2014-01-02 11:36:33

标签: java javascript jquery ajax parameters

我需要将带有ajax参数的'+'字符传递给我的控制器。

使用参数包含'+'字符的Ajax调用。

var subsNumbers = '+94'
var url = 'getList?subsNums='+subsNumbers;

$.ajax({
        url:url,
        type:'POST',
        dataType:'json',
        success:function (saveResponse) {
....
}
});

在我的控制器(Spring控制器类)中,

String deviceNumbers = request.getParameter("subsNums");
logger.debug("deviceNumbers-->{}", deviceNumbers);

'+'字符已替换为空格。 实际结果是

deviceNumbers--> 94 

预期

deviceNumbers-->+94 

1 个答案:

答案 0 :(得分:6)

您的网址编码不正确,请使用encodeURIComponent

var url = 'getList?subsNums='+encodeURIComponent(subsNumbers);