Schaltfläche Erstellen und sein Wert in Javascript
$(document).ready(function() {
$("#getDevicesButton").click(getContactList);
//$("#getDeviceResourcesButton").click(getDeviceResources);
});
function onDeviceReady() {
getContactList();
getDeviceResources();
}
function getDeviceResources(value) {
alert("getDeviceResources clicked, value passed " + value);
}
function getContactList() {
$.ajax({
url: "https://api.connector.mbed.com/endpoints/",
dataType: "json",
type: "GET",
headers: {
"Authorization": "Bearer <removed>"
},
cache: false,
error: function(xhr, ajaxOptions, thrownError) {
debugger;
alert(xhr.statusText);
alert(thrownError);
},
success: function(json) {
for (var i in json) {
$('#deviceList').append('Device #' + (i) + ': <br/> name: ' + json[i].name + '<br/> type: ' + json[i].type + '<br/> <button id=getDeviceResourcesButton onclick=getDeviceResources(' + i + ')>Get Device Resources</button>');
}
}
});
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<body>
<h3>Device List</h3>
<button id="getDevicesButton">Get Devices</button>
<ul id="deviceList"></ul>
</body>
Innerhalb einer Javascript-Funktion, ich habe ein JSON Ergebnis namens json. ich iterieren wie dies durch:
for (var i in json)
{
$('#deviceList').append('Device #' +(i)+ ': <br/> name: ' + json[i].name + '<br/> type: ' + json[i].type + '<br/> <button id=getDeviceResourcesButton onclick=getDeviceResources('+i+')>Get Device Resources</button>');
}
derzeit getDeviceResources definiert als
function getDeviceResources(value)
{
alert("getDeviceResources clicked, value passed "+value);
}
Mein Problem - wie es ist, ich einen Alarm w/dem erwarteten Wert, aber wenn ich ändern +i+
zu +json[i].name+
Ich bekomme nicht einmal eine Warnung.
Irgendeine Idee was vermisse ich?
Danke,
"Irgendeine Idee, was vermisse ich?" - Wahrscheinlich eine Fehlermeldung, die Ihren Code vor der Anzeige der Warnung abbricht. Prüfen sie ihre Konsole. – Amadan
(1) Verwenden Sie nicht "alert" zum Debuggen, verwenden Sie 'console.log' und den JavaScript-Debugger. Weitere Informationen finden Sie in den [Chrome DevTools-Tipps] (https://developers.google.com/web/tools/chrome-devtools/?hl=de). Andere Browser haben ähnliche Entwicklungstools. (2) Niemand kann sagen, was an diesem Code-Extrakt falsch ist. Veröffentlichen Sie ein vollständiges ausführbares Beispiel, entweder als [Stack Overflow-Code-Snippet] (https://blog.stackoverflow.com/2014/09/introducing-runnable-javascript-css-and-html-code-snippets/) oder als [ Geige] (https://jsfiddle.net/). –
Danke für Ihre Kommentare, Code hinzugefügt. – ranshe