如何从javascript中的序列化字符串中删除+符号?

时间:2013-02-08 16:20:08

标签: javascript jquery

我正在使用此函数通过ajax函数发送表单:

var formSerializedStr = form.serialize();

使用此函数,包含空格的字段为:

  

“我的价值”

被序列化为:

  

我+值

某些字段将日期作为值,并且:

  

日/月/年

转换为

  

DD%毫米%YYYY

。 其中'%'是特殊字符的十六进制代码

我可以在使用它发送到控制器之前转换所有特殊字符:

var newformSerializedStr = decodeURIComponent(formSerializedStr);

但加号未转换为空格。 我该如何解决?

1 个答案:

答案 0 :(得分:-1)

我认为你很难理解.serialize()是用来做什么的。 它将表单转换为GET参数字符串,因此如果您有一个表单:

<form>
    <input type="textfield" name="MY_INPUT" />
</form>

然后你通过ajax发送它:

$.ajax({
    url: 'http://MY_DOMAIN.COM/BACKEND.PHP?' + $('form').serialize(),
    type: 'GET'
});

然后你可以用PHP访问它:

$val = $_GET['MY_INPUT'];