我尝试使用带有破折号的 ID 来获取有关 JSON 中某些按钮状态的信息,该$. getJson ()
ID 分为两部分,并将它们输入到数组 regarr 中。但我无法在此查询中从 JSON 获取数据:
data.regarr[0].regarr [1] //regarr is undefined
HTML:
<div class='buttons' id='lamps-fire1'>OFF</div>
我的 JSON:
{"lamps":{"fire1":"off","fire2":"off","fire3":"off"},"motor":"on","temperature":"12"}
JavaScript
$(document).ready(function()
{
function reloadvalues()
{
$('.buttons').each(function ()
{
var id=$(this).attr('id');
var re=/-/;
var re2=/[a-z0-9]{1,}[^-][a-z0-9]{1,}/ig;
var regarr=[];
regarr=id.match(re2);
if (id.search(re)==-1)
{
$.getJSON('homeapi.ini','tire=none&id='+encodeURIComponent(id),function (data)
{
if (data.motor=='off')
{
$(this).html('OFF.');
}
else{
$(this).html('ON.');
}
});
}
else{
$.getJSON('homeapi.ini','',function (data)
{
if ((regarr[1]!='undefined')||(regarr[0]!='undefined')||(regarr !='undefined'))
{
if (data.regarr[0].regarr[1]=='off')
{
$(this).html('OFF.');
}
else{
$(this).html('ON.');
}
}
});
}
});
}
setInterval(function (){
reloadvalues();
},5000);
});
也许有人知道出了什么问题?