我正在使用这个函数在Javscript中获取我的参数,但是偶尔会切断我的charge_id
参数。
$.urlParam = function(name) {
var results = new RegExp('[\\?&]' + name + '=([^&#]*)').exec(window.location.href);
if (results) { return results[1] || 0; }
};
if ($.urlParam('success')) {
// Get Charge ID from param
var chargeId = $.urlParam('charge_id')
};
在这种情况下,charge_id
参数被上面的表达式缩短了:
lvh.me:3001/?charge_id=ch_1hK2X4XiaCv3r8&success=true
这是返回的内容:
ch_1hK2X4Xi
答案 0 :(得分:2)
$.urlParam = function(name) {
var results = new RegExp(name + '=([^&#]+)').exec(window.location.href);
if (results) {
return results[1] || 0;
}
};
应该做的伎俩。正如Barmar在评论中指出的那样,不要在正则表达式中使用HTML字符引用。