keydown事件中的值未更改

时间:2016-11-25 06:05:52

标签: javascript jquery javascript-events

我有以下功能:

formCreated = function (event, data) {  
    console.log(data.formType); // output: 'edit'   

    $('body').on('keydown', function (e) {           
       if (e.ctrlKey && e.which == 80) {
            e.preventDefault();
            e.stopPropagation();

            if (data.formType == 'create') // not changed until page refresh
                alert('save the record');
            else if (data.formType == 'edit')
                _connectPrinter(data);
        }
    });
 }

保存记录后,data.formType更改为“编辑”,但在页面刷新之前,事件值内部未更改。

1 个答案:

答案 0 :(得分:2)

尝试http://api.jquery.com/off/

$('body').off('keydown').on('keydown', function (e) {
   // your code here
}

.off()方法删除已注册的值。