javascript - 在 jquery 智能向导控件上启用/禁用按钮单击事件

标签 javascript jquery html css

我正在使用 this控件,这是 jquery 智能向导的版本 3。

这是智能 Sprite 的代码:

$('#wizard').smartWizard({transitionEffect:'slide'});

这是 javascript 中的辅助函数:

function disableNextButton(){
    var $actionBar = $('.actionBar');
    $('.buttonNext', $actionBar).addClass('buttonDisabled').off("click");
}

function enableNextButton(){
    var $actionBar = $('.actionBar');
    $('.buttonNext', $actionBar).removeClass('buttonDisabled');
}

css 类 actionBar,用于设置放置上一个、下一个和完成按钮的区域的样式。样式 buttonNext 应用于下一个按钮,样式 buttonDisabled 用于为按钮添加灰色。所有引用的样式都包含在智能向导 css 文件中。

问题是我可以使用 jquery 的“.off”函数禁用按钮单击事件,但我无法使用“.on”恢复原始事件处理程序。

我的问题是如何在禁用按钮后恢复下一个按钮点击事件?

谢谢。

最佳答案

.off 取消链接事件处理程序,因此您需要重新附加事件处理程序。你不能只说

$('.buttonNext', $actionBar).removeClass('buttonDisabled').on("click"); 

因为 jQuery 不会“记住”事件是什么,或者如果您有多个事件,也不会“记住”您想要绑定(bind)的事件。您可以使用 click 速记来指定函数,如下所示:

$('.buttonNext', $actionBar).removeClass('buttonDisabled').click(function() {
  // Code for your click goes here.
});

关于javascript - 在 jquery 智能向导控件上启用/禁用按钮单击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20889539/

相关文章:

javascript - vuejs安装: Cannot set the value of undefined

javascript - 如何清除输入类型图像?

javascript - Pushwoosh 和 PhoneGap 2.5.0 实现

javascript - 如何根据屏幕宽度定义变量?

jquery - 使用父元素的属性设置 img src 的值

javascript - 如何让人们将 LI 拖放到列表中的特定位置? (控制台日志问题)

javascript - 将单行展开为多行

javascript - Bootstrap 导航栏顶部的图像

jquery - 上传后自动应用样式

html - 将样式导入 Web 组件