2016-11-25 4 views
2

У меня есть следующие функции:Значения не изменились в KeyDown случае

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 изменен как «редактировать», но внутри значения событий не изменились до обновления страницы.

+0

Вам необходимо перерегистрировать его с новым значением. Поскольку предыдущее значение было в закрытии. –

ответ

2

Попробуйте http://api.jquery.com/off/ метод

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

.off() удаляет зарегистрированные значения.

+0

спасибо @Deepart –

 Смежные вопросы

  • Нет связанных вопросов^_^