2016-05-20 1 views
0

У меня есть onkeypress событие, и я хочу управлять элементом this. У меня также есть оператор if в функции события. Проблема в том, что ключевое слово this отличается внутри блока операторов if. Нормально ли быть таким. Какое у вас объяснение?Ключевое слово "this" Inside If statement in Event

пример:

$(o).find('input[name=numeric]').keypress(
    function (e) { 
     var a = this; // the real object element which activate the trigger 
     if (e.keyCode == 13) { 
      var b = this; //here "this" is different object 
     } 
     else 
      window.ncb.helper.validator.numeric(e); 
    } 
); 
+0

console.log (a === b) – leaf

+1

_ «здесь» это «другой объект» _... __NO ...__ – Rayon

+0

Я уверен, что это неверно. Внутри блока 'if' попробуйте выполнить' console.log (a === b) '. Я гарантирую, что это будет «правда». –

ответ

0

Я нашел проблему. В начале инструкции if все хорошо и понятно. После этого я заменяю содержимое html, которое this живет внутри old. В любом случае, спасибо.