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;
});

相关文章

页面搜索关键词突出 // 页面搜索关键词突出 $(function () {...
jQuery实时显示日期、时间 html: &lt;span id=&quot...
jQuery 添加水印 &lt;script src=&quot;../../../.....
中文:Sys.WebForms.PageRequestManagerParserErrorExceptio...
1. 用Response.Write方法 代码如下: Response.Write(&q...
Jquery实现按钮点击遮罩加载,处理完后恢复 思路: 1.点击按...