Несколько мыслей:
(1) Подтвердили ли вы, что используете последнюю версию jquery.tmpl.js?
https://raw.github.com/jquery/jquery-tmpl/master/jquery.tmpl.js
И я предполагаю, что ваша viewModel работает нормально? Вот модель представления, которую я использовал в своем локальном тесте. Я полагаю, что у вас выглядит похоже?
var vm = {
showable: ko.observableArray([
{ id: 0, title: 'foo' },
{ id: 1, title: 'bar' },
{ id: 2, title: 'baz' },
{ id: 3, title: 'bam' }
])
};
(2) Кстати, я понимаю, что Knockout скоро заменит jquery.tmpl на jsRender, так что, надеюсь, вы не слишком привязаны к .tmpl:
https://github.com/BorisMoore/jsrender
(3) В качестве обходного пути вы рассматривали вопрос о замене использования шаблонов с использованием самого нокаута? Это уберет вашу зависимость от jquery.tmpl. Таким образом, ваш шаблон будет выглядеть примерно так:
<script type="text/html" id="list_item_template">
<li data-bind="text:title, attr:{id:'list_item_'+id}" class="listItem clearfix" ></li>
</script>