我已經存儲在會話數據(JSON)的以下位:追加從sessionStorage的(JSON)dymanic數據的ListView
Prescription: [{"medID":"id1","medName":"name1","medQty":"qty1","medDirec":"Directions1"}, {"medID":"id2","medName":"name2","medQty":"qty2","medDirec":"Directions2"}]
我想自動獲取這些信息「顯示」內Listview
(jQuery的移動)load
頁面上,爲了這個,我想出了以下內容:
$(document).ready(function() {
window.addEventListener('load', OnStorage, false);
});
function OnStorage(event) {
if (window.sessionStorage) {
var retrievedData = sessionStorage.getItem("Prescription");
var PrescriptionJSON = JSON.parse(retrievedData);
var prescLength = PrescriptionJSON.Length();
for (var i = 0; i < PrescriptionJSON.Length(); i++) {
var text = '<h2>' + PrescriptionJSON[i].medName + '</h2>' +
'<p><strong>Quantity: </strong>' + PrescriptionJSON[i].medQty + '</p>' +
'<p><strong>Directions: </strong>' + PrescriptionJSON[i].medDirec + '</p>'
$('<li />', {
html: text
}).appendTo("#summaryList ul");
//$("#summaryList").append(text);
//alert(retrievedData);
}
$('#summaryList').listview("refresh");
$('#summaryList').trigger("create");
}
}
當我取消//alert(retrievedData);
我得到的JSON一個警報彈出裏面,但是當我打電話//alert(PrescriptionJSON);
(在parsed
變量)我得到這麼就像[object,Object]一樣。儘管如此,我不知道這是否值得一提,但以防萬一。
基本上我不知道上面的腳本有什麼問題,因爲我沒有從附加到listview
的JSON數據中得到任何東西。 僅供參考,我在HTML端有這個。
<ul id="summaryList" data-role="listview" data-inset="true">
<li data-role="list-divider" style="text-align:center">Prescription Summary</li>
</ul>
請注意,數據(Prescription
)的長度將被動態地創建,因此長度可能不總是像2上面的例子。
我已經經歷了一個很好的2小時在線研究,發現了類似的問題,但沒有人能幫助我解決我的問題。我也看過http://www.copterlabs.com/blog/json-what-it-is-how-it-works-how-to-use-it/,並學習了更多的東西,但仍然無法解決我的問題。
任何建議或問題都非常歡迎!
哇,完美的工作。謝謝!不熟悉'$ .each(obj,function(key,value){}'但現在我知道了!:) – Scur4