好吧,所以我试着用微芯片上的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)