我有一些代码,我在javascript中更新mathJax方程中的一些变量。它在第一次传递(即刷新页面)时工作正常,但是当我在第二次传递时更新变量时,等式显示为Latex代码而不是渲染的等式。
document.getElementById("sumstdeveq").innerHTML="$$ \\sqrt{("+stdev1+")^2+("+stdev2+")^2} $$";
这行在第一次传递时工作正常,但是当我更新stdev1和stdev2并再次运行此行时,它只显示代码。
这是一个小提琴:https://jsfiddle.net/yangchris16/k8us0hLt/6/
更改其中一个输入文本框中的值。
我不是太熟悉MathJax,但是添加了以下一行就是小提琴。
MathJax.Hub.Queue(["Typeset",MathJax.Hub,this.formula]);
就在你提到的那一行之后:
stdev1=0.2;
stdev2=0.05;
updatecalcs();
function updatecalcs(){
stdev1=parseFloat(document.getElementById("stdev1in").value);
stdev2=parseFloat(document.getElementById("stdev2in").value);
document.getElementById("sumstdeveq").innerHTML="$$ \\sqrt{("+stdev1+")^2+("+stdev2+")^2} $$";
MathJax.Hub.Queue(["Typeset",MathJax.Hub,this.formula]);
}