2013-07-24 5 views
0

У меня есть контактная форма с ID contactForm в файле HTML (ContactForm.html). В файле сопоставления ContactForm.js я попытался связать, с помощью JQuery, инструмент проверки JavaScript, как это:Что такое способ метеор для привязки jQuery к DOM?

Template.ContactForm.rendered = function() { 
    $("#contactForm").validationEngine(); 
} 

Моя проблема заключается в том, что связывание не происходит и validationEngine не срабатывает.

Каков подходящий способ Метеор для привязки к объектам DOM с помощью jQuery?

Боб

ответ

0

Я думаю, что вы хотите $(this.find("#contactForm")).validationEngine();

this внутри оказанной описана в http://docs.meteor.com и есть еще один вопрос here с большим количеством примеров кода. Существует еще одно обсуждение here об реактивности или сосредоточении внимания на элементе DOM, иногда осуществляющем привязку, поэтому, возможно, вы сталкиваетесь с этим.

+0

Если в приложении есть только один элемент '# contactForm', код будет функционально идентичным. –

0

Попробуйте окружить #contactForm элемент в шаблоне с {{#constant}} блок. Многие плагины пользовательского интерфейса не готовы работать с реактивностью. {{#constant}} отключает его, чтобы можно было использовать дополнительные функции.

+0

{{#constant}} - хорошая идея, и я попробую это. Меня беспокоит, что это не общее решение и может не работать в других обстоятельствах, когда элемент DOM, который я хочу связать с функцией jQuery, является и должен быть реактивным. Будет ли Метеор требовать собственный специальный набор плагинов jQuery? –

0

Я знаю, что теперь вы используете механизм проверки, но есть интеллектуальный пакет на Атмосфере, называемой Мезосфера, которая предназначена для работы с Meteor, имеет правила, форматы, преобразования и агрегации и позволяет проверять на клиентском и сервере. .

Полное раскрытие: Я создал мезосферу.

Это сказал, что есть пара незначительных ошибок, которые были исправлены и задвинуты на GitHub, которые не в атмосфере еще так, используя:

"Mesosphere": { 
    "git": "https://github.com/copleykj/Mesosphere" 
} 

в вашем smart.json позволит вам использовать исправление ошибок до следующий выпуск в Атмосферу.

+0

Я видел ваш пакет и заинтересован. Я могу переключиться на него, даже если я решаю эту конкретную проблему. –

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