2015-11-26 4 views
3

Я создаю чат-чат, и этот раздел чата динамически генерируется при нажатии контакта. В динамически генерируемые HTML У меня есть текстовое поле, чтобы ввести текст, вот HTMLСвязывание не работает в динамически сгенерированном HTML

<div class="chatboxinput"> 
    <textarea id="chatboxtextareaankur" class="chatboxtextarea" keydown.delegate="checkChatBoxInputKey($event, 'id', 'name')"></textarea> 
</div> 

Но метод «checkChatBoxInputKey» не выполняется на любую клавишу вниз событие. Пожалуйста, дайте мне знать, как это решить.

ответ

3

Это не работает, потому что вид компилятор Аурелии не имеет возможности компилировать динамически сгенерированный код, чтобы найти привязки и т.д.

Используйте if связывание, чтобы добавить/удалить элемент из DOM. Вот пример:

http://plnkr.co/edit/kBUz94?p=preview

<template> 
    <button click.delegate="showChatBox = true">Show Chat Box</button> 

    <div if.bind="showChatBox" class="chatboxinput"> 
    <textarea id="chatboxtextareaankur" class="chatboxtextarea" keydown.delegate="checkChatBoxInputKey($event)"></textarea> 
    </div> 
</template> 
export class App { 
    checkChatBoxInputKey(e) { 
    console.log(e.which); 
    return true; 
    } 
} 
+1

Thnx, его работы, но должен также некоторый механизм вручную применить связывания, как, как мы делаем в нокауте. –