我们在页面中,为了让下个页面进行数据操作,会把某些参数带在url request参数上传过去,那么到一个新的页面如果获取到url上参数的值呢,分享一个现成的js函数
(function ($) {
$.getUrlParam = function (name) {
var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)");
var r = window.location.search.substr(1).match(reg);
if (r != null)
return unescape(r[2]);
return null;
}
})(jQuery);
例如:
//点击在线支付产生的响应事件
$("#btn-create-order").click(function() {
$.ajax({
url: "/orders/create",
data: $("#form-create-order").serialize(),
type: "POST",
dataType: "JSON",
success: function(json) {
if (json.state === 200) {
alert("创建订单成功!");
location.href = "payment.html?oid="+json.data.oid;
console.log(json.data);
} else {
alert("创建订单失败!" + json.message);
}
},
error: function(xhr) {
alert("您的登录信息已经过期,请重新登录!HTTP响应码:" + xhr.status);
location.href = "login.html?oid="+json.data.oid; //将oid传给去,方便操作订单
}
});
});
在下一个页面就可以直接获取
let oid = $.getUrlParam("oid");
很好用