好吧,所以我试着用微芯片上的Pic网络来监控一些东西。除了一件事,我设法把它全部编好了。我需要比较它给我的两个温度,如果其中一个比另一个小,那么需要激活一个继电器,如果它的大或相等,那么必须激活另一个继电器。根据我的理解,Pic web会更新一个xml文件(status.xml),然后网站(使用ajax)从中获取值并将其显示在网页上。
XML文件如下所示

<response>
<temp0>~temp~</temp0>
<temp2>~tempc~</temp2>
</response

我用来获取网页中的值的ajax代码
document.getElementById('temp0').innerHTML = getXMLValue(xmlData, 'temp0');
document.getElementById('temp2').innerHTML = getXMLValue(xmlData, 'temp2');

为了展示它们我用
<span id="temp0"style="font-weight:normal">?</span>
<span id="temp2"style="font-weight:normal">?</span>

我要做的就是比较temp0和temp2
    var temp0 = parseFloat(document.getElementById('temp0').innerHTML)
    var temp2 = parseFloat(document.getElementById('temp2').innerHTML)

    if( temp0 < temp2 )
    {
        document.getElementById('temp3').innerHTML = '<font color="#00FF00">ON</font>';
    }
    else
    {
        document.getElementById('temp3').innerHTML = '<font color="#00FFFF">OFF</font>';

}

我只是添加<span id="temp3">?</span>来显示结果
我说的对吗?

最佳答案

if(getXMLValue(xmlData, 'temp0') < 'temp2')

'temp0'不是document.getElementById('temp0')的值,它只是一个包含“temp0”的字符串。
您需要将其分配给变量并将其从字符串转换为数字:
var temp0 = parseFloat(document.getElementById('temp0').innerHTML)
var temp2 = parseFloat(document.getElementById('temp2').innerHTML)

然后使用:
if(temp0 < temp2)

09-25 17:32