2015-04-06 2 views
1

Я пытаюсь предотвратить копирование и вставка пробелов в поле имени пользователя внутри моего шаблона приложения Meteor, но я всегда получаю сообщение об ошибке, как показано ниже, может кто-нибудь, пожалуйста, скажите мне, что я делать неправильно/отсутствует и есть ли другой способ контролировать контент, вставленный в текстовое поле в шаблоне Meteor? БлагодаряMeteor контролирует копирование и вставка в текстовое поле

 Template.UserRegisteration.events({ 
      'input #username':function(e,t){  
       this.value = this.value.replace(/\s/g,''); 
      } 
     }); 

Ошибка:

Uncaught TypeError: Cannot read property 'replace' of undefined 

ответ

1

Как Akshat упоминалось, чтобы получить поле DOM элемент использовать e.currentTarget вместо этого, на ваш вопрос образец кода, пожалуйста, попробуйте следующее

Template.UserRegisteration.events({ 
     'input #username':function(e,t){  
      var text = e.currentTarget.value; 
      e.currentTarget.value = text.replace(/\s/g,''); 
     } 
    }); 
+0

Спасибо, работал плавно – MChan

2

this контекст является контекстом данных, где input id="username поле.

Для получения элемента DOM поля используйте e.currentTarget вместо this.

0

В следующем примере, как извлечь и установить значение элемента DOM в случае Метеорной:

https://www.meteor.com/try/4

Template.body.events({ 
    "submit .new-task": function (event) { 
    // This function is called when the new task form is submitted 

    var text = event.target.text.value; 

    Tasks.insert({ 
     text: text, 
     createdAt: new Date() // current time 
    }); 

    // Clear form 
    event.target.text.value = ""; 

    // Prevent default form submit 
    return false; 
    } 
}); 

В метеора события, блокировать, «этот» не DOM , поэтому вы не можете вызвать на нем значение.

+0

Просьба представить соответствующий код в самом ответе. Если ссылка погибнет, ваш ответ будет бесполезным. –

+0

Я пытаюсь отслеживать событие ввода, как показано в моем вопросе, к сожалению, используя event.target.text.value возвращает ошибку. Некоданный TypeError: не может прочитать значение свойства «undefined» – MChan

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