私は、サーバーからデータを取得する4つのボタンを持っています。 4つのボタンの1つをクリックすると、正しい値が得られますが、4つのhtmlスパンをすべて満たす問題があります。たとえば、button1をクリックすると、button1の結果が4つのボタンのすべてのスパンに表示されます。私がbutton2をクリックすると、button2から結果が得られますが、4つのスパンでも結果が得られます。JavaScript getElemendById()。innerHTML = data.body.resultそれ自体を繰り返す...どのように修正するのですか?
4つの異なるバージョンのコードを試しましたが、4つすべてで少し異なる結果が得られます。ここで
はHTMLです:
function variableGet(variableName){
var vrGr = particle.getVariable({ deviceId: ActualDeviceID, name: variableName, auth: token });
vrGr.then(
function(data) {
document.getElementById("r1").innerHTML = data.body.result;
}
);
}
:
<html>
<head>
<title>Particle Javascript Example</title>
<script type="text/javascript" src="http://cdn.jsdelivr.net/particle-api-js/5/particle.min.js"></script>
</head>
<body>
<br>
<span id="r1"></span>
<button type="button" onclick="variableGet('getRelay1')">Relay1</button><br>
<span id="r2"></span>
<button type="button" onclick="variableGet('getRelay2')">Relay2</button><br>
<span id="r3"></span>
<button type="button" onclick="variableGet('getRelay3')">Relay3</button><br>
<span id="r4"></span>
<button type="button" onclick="variableGet('getRelay4')">Relay3</button><br>
そして、ここでは、私はこのコードは、常に私の最初の行にデータを提供します
を試してみた異なるバージョンです
このコードは4つの行すべてをクリックするボタンの情報を私に与えますが、やはり常に同じテキストです。
function variableGet(variableName){
var vrGr = particle.getVariable({ deviceId: ActualDeviceID, name: variableName, auth: token });
vrGr.then(
function(data) {
document.getElementById("r1").innerHTML = data.body.result;
document.getElementById("r2").innerHTML = data.body.result;
document.getElementById("r3").innerHTML = data.body.result;
document.getElementById("r4").innerHTML = data.body.result;
}
);
}
私もこれを試してみましたが、私は最初のバージョンになったように私は、私は同じ適切なデータを取得するが、唯一のこれまでの最初の行に乗る:
function variableGet(variableName){
var vrGr = particle.getVariable({ deviceId: ActualDeviceID, name: variableName, auth: token });
vrGr.then(
function(data) {
document.getElementById("r1").innerHTML = data.body.result
},
function(data) {
document.getElementById("r2").innerHTML = data.body.result
},
function(data) {
document.getElementById("r3").innerHTML = data.body.result
},
function(data) {
document.getElementById("r4").innerHTML = data.body.result
}
);
そして最後に、私は再び、私は適切なデータを得るが、常に同じライン上に、同様にこれを試してみました:
function variableGet(variableName){
requestURL = "https://api.particle.io/v1/devices/" + ActualDeviceID + "/" + variableGet + "/?access_token=" + token;
var vrGr = particle.getVariable({ deviceId: ActualDeviceID, name: variableName, auth: token });
vrGr.then(
function(requestURL) {
document.getElementById("r1").innerHTML = requestURL.body.result
},
function(requestURL) {
document.getElementById("r2").innerHTML = requestURL.body.result
},
function(requestURL) {
document.getElementById("r3").innerHTML = requestURL.body.result
},
function(requestURL) {
document.getElementById("r4").innerHTML = requestURL.body.result
}
);
}
は結果に対して1つの以上のパラメータを追加することが容易になります: 'variableGet( 'getRelay1'、 'R1')'。 – skobaljic