2 waaulwh waaulwh 于 2016.09.26 10:31 提问

jquery.dialogBox回车事件

if(event.keyCode === 13){
$('.dialog-btn-confirm').trigger('click');
}
配了回车事件,触发了一下它默认的确定按钮
if($.isFunction(that.settings.confirm)){
$('.dialog-btn-confirm').on('click',function(){
that.settings.confirm();
})
}
confirm里面写我的后台请求
$('#dialogDiv').dialogBox({
autoHide: false, //是否自自动消失,配合time参数共用
hasMask: true, //是否显示遮罩层
hasClose: false, //是否显示关闭按钮
hasBtn: true, //是否显示按钮
type:'correct',
confirmedClose:false, //点击确定按钮后 是否自动关闭弹出层
confirm: function(){
ajax()
}, //点击确定后回调函数
cancelValue: '暂不删除', //取消按钮文字内容
confirmValue: '确定删除', //确定按钮文字内容
cancel: function(){isPop=false;}, //点击取消后回调函数,默认关闭弹出
title: '', //标题
content: '删除菜品时,将会删除该菜品下的所有信息,您确定要删除该菜品吗?' //内容
});
问题是,第一次按回车,请求一次后台,操作第二次时候,请求后台两次?

2个回答

showbo
showbo   Ds   Rxr 2016.09.26 10:59

应该哪个地方重复执行confirm绑定了,自己检查下按键处理事件,绑定过就不要在绑定了,要不会叠加。或者unbind后再bind

     if ($.isFunction(that.settings.confirm)) {
        $('.dialog-btn-confirm').unbind('click').on('click', function () {
            that.settings.confirm();
        })
    }
qq_29594393
qq_29594393   Ds   Rxr 2016.09.26 10:36

禁用按钮,提交表单和申请的时候都会用到禁用按钮 ,或者事件使用one 绑定 ,这样的话就只会执行一次,当满足一定条件之后才能再次提交,例如提交的内容不一样,取消前一次的提交信息 ,或者隔一段时间才能再次提交

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!