如何在angularjs中使用ng-repeat渲染mathml?

时间:2016-09-19 05:44:47

标签: c# html .net angularjs

我在sqlserver中存储了mathml格式的方程式。使用linq我将列表中的方程式传递给UI。在UI中,我尝试使用ng-repeat渲染这些mathml字符串,但它根本不起作用。

when i am directly putting the mathml string inside any div its rendering equations correctly.

In ng-repeat it showing the mathml format as it is.

Mathml字符串是

<math xmlns="http://www.w3.org/1998/Math/MathML">
    <mroot>
        <mn>4</mn>
        <mn>2</mn>
    </mroot>
    <mo>+</mo>
    <mfrac>
        <mn>5</mn>
        <mn>2</mn>
    </mfrac>
    <mo>&#xA0;</mo>
    <mo>=</mo>
    <mo>&#xA0;</mo>
    <mfenced open="[" close="]">
        <mtable>
            <mtr>
                <mtd>
                    <mn>2</mn>
                </mtd>
                <mtd>
                    <mn>2</mn>
                </mtd>
            </mtr>
            <mtr>
                <mtd>
                    <mn>8</mn>
                </mtd>
                <mtd>
                    <mn>4</mn>
                </mtd>
            </mtr>
        </mtable>
    </mfenced>
</math>

1 个答案:

答案 0 :(得分:0)

使用此指令可能是个好主意: ngMathJax

它是如何运作的一个例子:

&#13;
&#13;
<div ng-math-jax>
<math xmlns="http://www.w3.org/1998/Math/MathML">
    <mroot>
        <mn>4</mn>
        <mn>2</mn>
    </mroot>
    <mo>+</mo>
    <mfrac>
        <mn>5</mn>
        <mn>2</mn>
    </mfrac>
    <mo>&#xA0;</mo>
    <mo>=</mo>
    <mo>&#xA0;</mo>
    <mfenced open="[" close="]">
        <mtable>
            <mtr>
                <mtd>
                    <mn>2</mn>
                </mtd>
                <mtd>
                    <mn>2</mn>
                </mtd>
            </mtr>
            <mtr>
                <mtd>
                    <mn>8</mn>
                </mtd>
                <mtd>
                    <mn>4</mn>
                </mtd>
            </mtr>
        </mtable>
    </mfenced>
</math>
</div>
&#13;
&#13;
&#13;