AngularJS向函数或指令发送window.location
AngularJS send window.location to a function or a directive
我正试图创建一个"Back"按钮作为函数或指令。点击后,它会调用一个函数,在将用户重定向到url之前,该函数有几件事要做。通常,在纯JS中,我会有一个简单的div和一个onclick函数,我会将URL传递给它,然后该函数会完成它的任务,然后创建一个window.location.href=URL,就可以了。在angular中,我试图发送的URL部分是硬编码的,部分来自ng模型:url="#/clients/editer/{{client._id}}"
当试图使用一个简单的函数时,我会将其作为字符串传递给它,但我的函数并没有将client.id作为字符串获取,尽管firefox的HTML检查器说它是这样做的。但如果我console.log函数得到的URL,它会说"#/clients/editer/{{client._id}}"
代替"#/clients/editer/56684b4fe7b59ff020b85590"
当尝试使用指令而不是函数时,作为这一切的新手,我不明白如何将URL传递给指令。由于URL可能会从一个模块到另一个模块发生根本性的变化(从"#/clients/editer/{{client._id}}"
到"#/materiel/editer/{{materiel._id}}"
,我需要将解码后的URL直接传递给指令,然后指令将执行onclick函数
希望有人能帮助我!
我制作了简单的测试代码
js
scope.client._id = 9;
scope.somefunction = function (url){
console.log(url)
}
Html
<div ng-click="somefunction('#/clients/editer/{{client._id}}')">link</div>
结果:#/clients/editer/{{client_id}}
<div ng-click="somefunction('#/clients/editer/'+ client._id)">link</div>
结果:#/clients/editer/9
这是你想要达到的结果吗?
- window.location替换并传递URL历史记录条目中的变量
- 可以<脚本类型=“;text/javascript”>window.location=“/"</
- window.location使用jquery mobile实现chrome跳转
- Windows.Open 在 window.Location 工作时不起作用
- 如何将所有作业自定义到window.location.href
- window.location未刷新到现有URL
- 如果window.location.href.indexOf('player=1')添加样式
- 在$state.go之后执行$window.location.reload(true)
- javascript window.location在检查firebug时给了我一个错误的url路径
- angularjs 中 $window.location.reload() 和 $route.reload() 之间的区
- 在AJAX中使用window.location.replace'成功'回调
- IE中不支持JQuery window.location.hash
- PhoneGap如何在更改window.location/document.location后保持Javascript的
- 如何在更改window.location后停止执行
- 警报中的window.location必须重定向到上一页
- 如何在窗体操作或window.location(PHP)中使用数据切换
- 正在将目标添加到window.location
- window.location.htm无法在chrome扩展中工作
- 可以'当window.location.href时,无法从javascript获取post值
- 基于AJAX的网站中的JS window.location