jQuery开/关点击

时间:2018-05-01 01:43:54

标签: javascript jquery

我需要拦截页面上的点击并执行一些验证逻辑并让流程继续。

我有一个链接:

<a data-link="true">Link</a>

Js拦截:

$("a[data-link='true'").off("click.link").on("click.link", (event) => this.validate(event));

在验证功能中我只做了一些验证,我需要继续处理请求。

如何拦截点击,如果验证没问题,请继续原始请求?

感谢。

1 个答案:

答案 0 :(得分:0)

如果data选择器更通用,那么$(function(){ // Listen for data link in general $('a[data-link]').on('click',function(e){ // Stop all request e.preventDefault(); // Get the link href var hrefPath = $(this).attr('href'); // If the data-link is set to true if($(this).data('link') === true) { // Do your validation here, not sure if your validation function // works or not, but here is where you apply it var valid = true; // If failed, set the default path to empty if(!valid) hrefPath = false; // If the path is not empty, go to the default path if(hrefPath !== false) window.location = hrefPath; // Stop return false; } // If the link is not true, just go to the default path window.location = hrefPath; }); }); 选择器可能会做得更好:

answer()