如何在不重定向的情况下使用空的href属性
How can I use an empty href attribute without redirect?
有没有一种方法可以使href
不重定向回angular2中的根?因为我有这个<a href="" (click)="modal.open()"></a>
代码来打开一个模态,但它将我重定向回主页。
我知道这是因为routeConfig angular有,但有办法说绕过它吗?
{ path: '', component: LoginComponent, pathMatch: 'full'},
请注意,如果完全删除href是有效的,则可能没有检查w3c验证。
您可以使用:
<a href="javascript:;"">Link</a>
或者,如果你不想使用内联JavaScript:,可能会更好
<a href="" (click)="$event.preventDefault()">Link</a>
以实现没有任何副作用的链接。
Content-Security-Policy
不允许内联脚本(例如script-src: 'self';
)时,href="javascript:;"
在单击链接后将产生错误(https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/script-src)。
您可以在单击时将空href与event.prventDefault()一起使用。
<a href="" (click)="$event.preventDefault()">Link</a>
我认为这个问题的更好答案可能是:
<a href="" (click)='$event.preventDefault();modal.open()'>
ng-href
而不是href
。因此,如果您想要拥有href属性,那么您应该使用ng-href
。
如果你想根据W3C规范拥有有效的HTML,那么不要使用Angular,因为(click)=...
等不是有效的属性:)IMHO这个HTML有效性被高估了。
如果您只想打开一个模式窗口,那么不要使用<a>
标记,因为这不是它们的主要用途。<a>
用于导航。请改用<button>
。这也将解决您使用href的问题。
相关文章:
- 锚点元素的href属性自动更改
- href属性内的javascript函数
- 点击获取jQuery上的href属性
- href属性在页面加载后拒绝重新设置
- 使用 Div 标签的 location.href 属性时,Eval 不起作用
- 将定位点的 href 属性与“#”进行比较
- SEO机器人是否总是遵循A标签的href属性中的URL,即使点击/点击被Javascript拦截
- 如何删除锚标记的 href 属性内的 #
- 如何防止jQuery在单击时更改href属性
- 通过jQuery Mobile中的jQuery更改href属性
- 查找jquery多选符的href属性
- 如何使用javascript更改href属性
- Javascript href 属性用于 css 未更新
- 恢复javascript函数中的href属性
- 单击即可将css href属性更改为多个html页面
- 在锚标记的 href 属性中执行 JavaScript
- 在IE 7中,如果链接是使用jQuery创建的,如何获取链接的href属性的文字值
- 如何在 DOM 加载后使用 JavaScript 或 JQuery 从 href 属性中删除字符
- 省略元素中的 href 属性
- getAttribute('href') 始终返回“#”,而不考虑移动浏览器上的实际 href 属性