knockoutjs контейнер меньше шаблона внутри SELECT, каждый параметр не работает с Internet Explorer

У меня есть приложение для опроса / опроса, и у меня возникают проблемы с заполнением выпадающего списка с помощью knockoutjs.

Пожалуйста, проверьте эту скрипку с Firefox (или Chrome), затем попробуйте с Internet Explorer 9 (или IE8, или IE7 ... knockout говорит, что он совместим с IE6 +, но, очевидно, IE вызывает некоторые проблемы в моем сценарии).

В Firefox и Chromeмой пример jsfiddle работает, но не с Internet Explorer. Смотри в 1-ом выпуске последний вопрос "Где ты живешь?" и на вкладке 2 «Любимый вид спорта?». Раскрывающийся список не заполняется в IE.

Я подозреваю, что что-то не работает с $ parent или $ parent.ParticipantAnswer == null не понимается IE. Я пытался отладить, но, очевидно, не нашел причину, поэтому я здесь.

И в tab1, и в tab2 параметры не заполняются, поэтому здесь приведен код, в котором эти 2 шаблона называются:

<!-- ko if: AnswerTypeId == 2 -->
<select data-bind="attr: { name: Id, id: 'answerq' + Id }">
<option value="0"></option>
<!-- ko template: { name: 'option-template', foreach: Answers } -->                                                        
<!-- /ko -->
</select>
<!-- /ko -->

<!-- ko if: AnswerTypeId == 6 -->
<select data-bind="attr: { name: Id, id: 'answerq' + Id }">
    <option value="0"></option>
    <!-- ko template: { name: 'location-template', foreach: Answers } -->                                                        
    <!-- /ko -->
</select>
<!-- /ko -->

И вот 2 шаблона:

<script type="text/html" id="option-template">

    <!-- ko if: $parent.ParticipantAnswer != null && $parent.ParticipantAnswer.AnswerId == $data.Id -->
    <option data-bind="text: Description, attr: { value: Id, selected: 'selected' }"></option>
    <!-- /ko -->

    <!-- ko if: ($parent.ParticipantAnswer == null || $parent.ParticipantAnswer.AnswerId != $data.Id) -->
    <option data-bind="text: Description, attr: { value: Id }"></option>
    <!-- /ko -->

</script>

<script type="text/html" id="location-template">

    <!-- ko if: $parent.ParticipantAnswer != null && $parent.ParticipantAnswer.AnswerInt == $data.Id -->
    <option data-bind="text: Description, attr: { value: Id, selected: 'selected' }"></option>
    <!-- /ko -->

    <!-- ko if: ($parent.ParticipantAnswer == null || $parent.ParticipantAnswer.AnswerInt != $data.Id) -->
    <option data-bind="text: Description, attr: { value: Id }"></option>
    <!-- /ko -->              

</script>

Я думал, что контейнер без шаблона создаст проблемы, ноэто jsfiddle работает как на Firefox, так и на IE.

Я действительно понятия не имею, почему он не работает с IE, я прошу здесь о действительном исправлении и, возможно, объяснении причины, чтобы мы все могли поучиться из этого;) Спасибо.

Ответы на вопрос(1)

Ваш ответ на вопрос