ng-template not working in IE8 in nested list

200 views Asked by At

I have the following code (jade)

script(type="text/ng-template" id="carousel.html")
    include carousel.html

Where carousel.html has a recursively nested list:

<ul>
    <li ng-repeat="step in steps">
        {{step}}
        <ul ng-include="'substeps'"></ul>
    </li>
</ul>

Where substeps is:

<script type="text/ng-template" id="substeps">
    <li ng-repeat="step in step.substeps>
        {{step}}
        <ul ng-include="'substeps'"></ul>
    </li>
</script>

Basically as long as there are substeps, the ng-repeat will add them as nested lists. This works in all browsers except for IE8. Is there anything I'm overlooking? Maybe a bug in ng-template in IE8?

1

There are 1 answers

0
William Neely On

The fact that I was using Jade to include the carousel hid the fact that I had created nested script tags. The substeps ng-template was inside the carousel.html template. Apparently Chrome is okay with this while IE8 (and maybe others that I didn't check) are not okay with this because it's invalid HTML. Moving the substeps template out of carousel.html fixed it.