ich folgend erreichen müssen:JavaScript: Anhänge Kind mit Stil und Schleife
<ul data-role="listview">
<li data-icon="false">
<!--loop content here-->
</li>
</ul>
mit Hilfe von JavaScript. Ich denke, append Kind würde den Trick tun. Können Sie mir sagen, wie man appendchild verwendet, um dieses Ergebnis zu erzielen? Ich habe versucht, die folgenden:
$(document).ready(function() {
$(document).bind('deviceready', function() {
//Phonegap ready
onDeviceReady();
});
//var output = document.getElementById("output");
var _ul = document.createElement('ul');
var _li= document.createElement('li');
_ul.setAttribute("data-role", "listview");
_li.setAttribute("data-icon", "false");
$.ajax({
url: 'json_encoded_db.php',
dataType: 'jsonp',
jsonp: 'jsoncallback',
timeout: 5000,
success: function(data, status){
$.each(data, function(i,item) {
_li.innerHTML =
'<a href="" id="'+item.id+'">'+
'<img src="images/'+item.img+'">'+
'</a>';
_ul.appendChild(_li.cloneNode(true));
});
},
error: function(){
output.text('There was an error loading the data.');
}
});
document.getElementById("output").appendChild(_ul);
});
aber es funktioniert nicht, ich meine, es ist eine Liste ohne Stil und anscheinend keine Daten-Rolle Eigenschaften bekommt. (natürlich funktioniert es um Daten aus der Datenbank zu bekommen, ich habe es getestet).
Was meinst du mit „es ist eine Liste ohne Stil“? Nichts in dem Code zeigt Styling. Wollen Sie sagen, dass die li-Elemente * do * mit den richtigen Anker- und Bildinhalten erzeugt werden, aber ohne die 'data-' Attribute? – nnnnnn
Ich habe Data-Role = "Listview" und Data-Icon = "False" formatiert. Genau, es wird mit den richtigen Anker- und Bildinhalten erstellt, aber ohne die Datenattribute. – Tony33
Ich habe deinen Code in eine Geige kopiert und den Ajax-Aufruf durch ein Timeout ersetzt (weil ich den Ajax nicht in der Geige arbeiten konnte), und die Elemente werden korrekt erstellt * mit den 'data-' Attributen: https://jsfiddle.net/uu35z9a3/ – nnnnnn