正在捕获.单击以获取URL
Capturing .click for URLs
我对Javascript/Ajax还比较陌生。
当用户点击某些url时,我希望完全用Javascript/jquery来处理点击。
<a class="row_edit" href="/sales_item/edit/{{ item.id }}"></a>
我所做的是向这个html文件添加一个javascript:
$(document).ready(function () {
$(".row_edit").click(row_edit);
});
function row_edit() {
var url = $(this).attr("href") + "/";
...
}
这运行得很好,每次我点击row_edit时,javascript都会启动并为我加载部分网站。但在某些情况下,实际链接似乎会启动(我看到部分网站加载为整个屏幕)。似乎存在种族状况。
我认为确保只有javascript被激发的最好方法是将href
的内容更改为#
。通过这种方式,我确保url本身无论如何都不会消失,并且只有我的javascript在启动。但是,我该如何在row_edit()
中获得我的url
值呢?
也许我在这里采取了错误的做法。你们是怎么解决这个问题的?
要确保只有javascript在启动(取消点击的默认操作(导航)),您必须在点击处理程序中调用preventDefault();
。
例如:
$(document).ready(function () {
$(".row_edit").click(row_edit);
});
function row_edit(event) {
var url = $(this).attr("href") + "/";
...
event.preventDefault();
}
我不确定使用javascript而不是href执行重定向的意图。无论如何,其中一种方法是。。。
如果你正在为支持"数据"(HTML5)的现代浏览器实现,那么你可以使用这样的属性
<a class="row_edit" data-url="/sales_item/edit/{{ item.id }}" href="#"></a>
并修改javascript以获得适当的属性值
var url = $(this).attr("data-url") + "/";
<a href="#"> click me </a>
"#"用于阻止clcik
通过jquery阻塞默认事件。
添加新的事件处理程序。
参考链接(jquery):-
http://jsfiddle.net/8LeaP/
相关文章:
- Firebase-登录时获取url
- 正在捕获.单击以获取URL
- Javascript获取url并通过添加到其中进行重定向
- 如何使用javascript从同一浏览器下的其他页面获取URL?有可能吗
- 如何从Beautiful Soup获取URL
- 我想从iframe获取url
- 使用Javascript获取URL参数
- 在 Javascript 中获取 URL-Parameter 不适用于 urlencode'&'
- 如何创建一个组件,我可以设置在 Angular 2 中的属性中获取 URL 数据
- 如何使用jQuery获取url的最后两个字符
- 使用jquery获取url参数
- 如何获取url中参数的真实值
- 使用表单和POST方法通过Javascript获取URL参数
- nodejs:在OutgoingMessage中获取url
- PHP-忽略换行符获取url
- 如何在Javascript中获取url的hashtag值和amp值
- 获取URL附加的复选框值
- 如何使用Javascript获取URL参数
- 如何使用Javascript获取URL参数
- 从2组单选按钮中获取url