jquery – onclick =“return confirm(”)”使用$(‘.class’).click(function(){});

前端之家收集整理的这篇文章主要介绍了jquery – onclick =“return confirm(”)”使用$(‘.class’).click(function(){});前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有这个功能,用户点击后禁用输入:
$('.click-off').click(function () {
    var btn = this;
    setTimeout(function () { $(btn).attr('disabled','disabled'); },1);
    return true;
});

我有这个输入与javascript确认:

<input type="submit" class="click-off" onclick="return confirm('Are you sure?');" value="Delete">

即使我在确认框中单击“取消”,也会调用$(‘.click-off’).click()事件,并且该按钮将被禁用.

$(‘.click-off’).click()被很多输入使用,因此确认不能在其中.

如何查看$(‘.click-off’)中的确认返回.点击事件?甚至阻止$(‘.click-off’).点击事件来调用

解决方法

为什么你首先将这些逻辑分开?以下是解决问题的两种方法

将逻辑组合到一个方法中:

$('.click-off').click(function () {
    // escape here if the confirm is false;
    if (!confirm('Are you sure?')) return false;
    var btn = this;
    setTimeout(function () { $(btn).attr('disabled',1);
    return true;
});

使用全局变量(或最好是对象):

var clickOffConfirmed = false;

<input type="submit" class="click-off" onclick="clickOffConfirmed = confirm('Are you sure?');" value="Delete" />


$('.click-off').click(function () {
    // escape here if the confirm is false;
    if (!clickOffConfirmed) return false;
    var btn = this;
    setTimeout(function () { $(btn).attr('disabled',1);
    return true;
});

猜你在找的jQuery相关文章