Javascript从url获取id有两个选项
javascript get id from url two options.
我有链接:
https://localhost:44301/.../.../2e8f0070-ff56-4f88-a316-b6d45f67b749/
然后我可以从这个方法得到ID:
var index = window.location.href.lastIndexOf("/");
if (index > 0 && index + 1 < window.location.href.length) {
return window.location.href.substring(index + 1);
} else {
return null;
}
但是如果链接是:
https://localhost:44301/.../.../2e8f0070-ff56-4f88-a316-b6d45f67b749#/
来自AngularJS路由的哈希值。
那么我如何获得没有"#"字符的ID ?
如果你正在使用ui-router,你的代码应该看起来像这样:
.state('stateName', {
url: '/object/:id',
controller: 'ObjectCtrl',
templateUrl: 'views/object.html'
...
});
然后,由于控制器,您可以访问id值,使用$stateParams
(() => {
app.controller('ObjectCtrl', objectCtrl);
objectCtrl.$inject = ['$scope', '$stateParams'];
function objectCtrl($scope, $stateParams) {
let id = $stateParams.id;
console.log(id); // prints "2e8f0070-ff56-4f88-a316-b6d45f67b749"
}
})();
您应该使用replace
函数从url中删除哈希。
return window.location.href.substring(index + 1).replace('#', '');
这将为您从字符串中删除散列。
相关文章:
- 我可以在Dynamics CRM 2016的复合地址字段中添加两个选项字段吗
- 仅在使用javascript和html的浏览器中在相同的两个选项卡之间切换
- 一个文本框,其中两个选项的值不同
- 两个选项卡—第一个选项卡在第二个选项卡中处于调试模式时被卡住
- 我有下面垂直菜单的jquery代码,当我悬停在apparels选项卡上时,我有两个选项卡作为apparels和化妆品
- CRM 2011+问题与javascript中的两个选项集
- 如何使用标题在 PHP 中打开新的两个选项卡
- 引导导航选项卡同时显示两个选项卡
- Boostrap和Angular:同时保持两个选项卡处于活动状态
- 如果我有两个选项的代码,单选按钮的结果将无法正常工作
- 并排显示选择框中的两个选项
- 切换按钮在两个选项卡之间切换
- 有两个选项卡打开到网站,你能知道哪个选项卡是活动的吗
- 删除两个选项
- onchange上有两个选项
- Js在两个选项之间切换;如果“;
- jQueryUI在另一个选项卡中有两个选项卡-高度是't在隐藏时设置
- add()生成两个选项卡,其中一个处于奇数位置,为空且未使用
- Jquery一旦从选择下拉列表中选择两个选项运行代码
- 当两个选项被选中时,使用jquery更改按钮上的链接