所以我做了两个按钮,看起来像这样:
<input id="buttonLED1_green" type="button" value="green LED" onClick="writeLED(1,0)">
<input id="buttonLED1_red" type="button" value="red LED" onClick="writeLED(1,1)">
正在执行的函数onCLick:
function writeLED(id, color) {
try {
SetDataAnalog( id+400, color, 1,true);
document.write("hi");
} catch (e) {
}
}
并且这个发送xmlHTTP请求以更改我的另一个设备上的模拟数据点,该设备在地址上存储数字。
var xmlHttp = new Array(2); // Index 0 fĂĽrs Lesen, Index 1 fĂĽrs Schreiben
var ddcURL = "http://192.168.1.60/";
function SetDataAnalog(addr, wert, endeAdddr, isFullQualified) {
endeAdddr = parseInt(endeAdddr);
var cmd;
if (isFullQualified) {
cmd = ddcURL + "SetADP:" + addr + ":" + wert;
} else {
cmd = ddcURL + "SetADP:" + addr + ":" + wert;
}
try{
if (xmlHttp[1]){
xmlHttp[1].open('GET', cmd, true);
xmlHttp[1].send(null);
}
} catch (e) {
alert('error');
}
}
问题是,我第一次点击任何按钮时,它们正常工作,模拟地址401上正在设置0或1,但是当我再次点击它时,所有功能也会被执行,但数据是因为没有写在401地址上的任何原因。由于某种原因,当我关闭浏览器并重新打开页面时,它再次起作用。