Javascript 如何在jquery中使用$.param
我已经在网上搜索过了,唯一有用的信息是jquery网站本身 我有以下代码:Javascript 如何在jquery中使用$.param,javascript,jquery,Javascript,Jquery,我已经在网上搜索过了,唯一有用的信息是jquery网站本身 我有以下代码: var param = { branch_id : branch_id}; var str = $.param(param); alert(str); 但记录或警报时的输出为: branch_id=1234 + //lets say for example 1234 is the value. 为什么那里有一个加号?这是我的问题。之所以发生这种情况,是因为您的分支id末尾包含一个空格: "1234 " // =>
var param = { branch_id : branch_id};
var str = $.param(param);
alert(str);
但记录或警报时的输出为:
branch_id=1234 + //lets say for example 1234 is the value.
为什么那里有一个加号?这是我的问题。之所以发生这种情况,是因为您的
分支id
末尾包含一个空格:
"1234 " // => 1234+
查看jQuery.param
的源代码
因此,首先使用encodeURIComponent
将空间转换为%20”
,然后jQuery.param将其替换为加号:
return s.join("&").replace(r20, "+");
您可以修剪输入值以避免此冗余+或可能将值强制转换为数字。之所以发生这种情况,是因为您的
分支id
末尾包含一个空格:
"1234 " // => 1234+
查看jQuery.param
的源代码
因此,首先使用encodeURIComponent
将空间转换为%20”
,然后jQuery.param将其替换为加号:
return s.join("&").replace(r20, "+");
您可以修剪输入值以避免此冗余+或可能将值强制转换为数字。您想要什么作为输出?我也不想要,即使使用console.log。很好。这也意味着您没有粘贴所有代码。您发布的示例没有提醒
+
。必须缺少某些内容…确保数据(分支id)中没有空白,您希望输出什么?我也没有,即使使用console.log。很好。这也意味着您没有粘贴所有代码。您发布的示例没有提醒+
。一定是遗漏了什么…请确保数据(分支id)中没有空白。当然,是的!空格(url-)编码为+
。很好的发现+1顺便说一句:var r20=/%20/g
当然好了!空格(url-)编码为+
。好的发现+1顺便说一句:var r20=/%20/g