Я не использую встроенные обработчики событий - по той же причине я отказываюсь использовать атрибут style
для css. Jquery позволяет легко class="foo"
в html и $('.foo').click( function () {} )
во внешнем .js
файле.
Но, чтобы приложить все усилия, чтобы ответить на этот вопрос, проверьте эти документы на Template::Filter
для тех, которые в ядре.
Кажется, что вы могли бы сделать [% s | replace( "'", "\'" ) %]
, чтобы избежать одиночных кавычек. Или вы могли бы написать более сложный анализатор javascript, который разрешает только вызовы функций, и создать свой собственный Template :: Filter