我有部分查看,用于我网站中的所有其他视图。在一个页面中,我需要禁用链接的点击效果,然后在某些操作后再次启用它。我可以用下面的代码在Razor中禁用并启用事件处理程序
$("#Link").off();
禁用它,但我不能再次启用它。我尝试使用$(“#Link”)。on();但它不起作用。 由于我不熟悉web开发,因此我很难弄清楚这一点。
我有部分查看,用于我网站中的所有其他视图。在一个页面中,我需要禁用链接的点击效果,然后在某些操作后再次启用它。我可以用下面的代码在Razor中禁用并启用事件处理程序
$("#Link").off();
禁用它,但我不能再次启用它。我尝试使用$(“#Link”)。on();但它不起作用。 由于我不熟悉web开发,因此我很难弄清楚这一点。
不要使用jQuery的off
方法。它从该元素中删除所有事件处理程序(并将其抛出)。相反,禁用元素:
$("#Link").prop('disabled', true);
并使其:
$("#Link").prop('disabled', false);
事件不火禁用的元素。
你可以使用一个布尔标志,以确定该元件是否被启用与否:
var linkEnabled = true;
// Return false if link is not enabled
// (It will continue normal execution if it returns true)
$('#Link').on('click', function() {
return linkEnabled;
});
// Example: disable link on click of another element, then re-enable it after some actions
$(yourElement).on('click', function() {
linkEnabled = false; // disable link
// Do some stuff here
linkEnabled = true; re-enable link
});