不能使用javascript删除参数
can't remove parameter using javascript
我有一个这样的url
test.html?dir=asc&end_date=2016-09-23&order=created_at&start_date=2016-08-14
我想用下面的javascript
删除参数function removeParam(uri) {
uri = uri.replace(/([&'?]start_date=*$|start_date=*&|[?&]start_date=(?=#))/, '');
return uri.replace(/([&'?]end_date=*$|end_date=*&|[?&]end_date=(?=#))/, '');
}
但它没有工作,有人知道这是怎么回事吗?
在现代浏览器中你可以很简单地做到这一点
var x = new URL(location.origin + '/test.html?dir=asc&end_date=2016-09-23&order=created_at&start_date=2016-08-14');
x.searchParams.delete('start_date');
x.searchParams.delete('end_date');
var uri = x.pathname.substr(1) + x.search; // substr(1) because you don't have a leading / in your original uri
至少,我认为它更简单
您的RegExp不匹配!
如果你想删除end_date
,你应该:
uri.replace(/(end_date=)([^*&]+)/, 'end_date=')
等等
相关文章:
- 删除处于抽象状态的参数angular
- JS:删除带有接受参数的处理程序的事件侦听器
- 谷歌应用脚本中的 UrlFetchApp.fetch 删除 url 参数
- getJSON()-如何删除数据参数前面的AND符号
- 可以't获取此函数以删除基于javaScript中后续参数的特定元素
- 使用Javascript从url中删除参数
- 使用正则表达式删除网址参数
- 通过删除一个参数及其值来清理 URL
- 从 JavaScript 中的参数中删除参数
- 从请求 URL 中删除参数
- 从查询字符串中删除参数而不重新加载
- 以不正确的顺序从绑定中删除2.0参数
- 使用jQuery或JavaScript从url中删除参数
- 从url中删除参数
- 如何在URL中删除参数并在地址栏中显示它,而不会在Javascript中引起重定向
- 从url中删除参数无效
- 从URL中删除参数
- 不能使用javascript删除参数
- 在重定向后从url中删除参数
- 如何从url查询中删除参数