在Jquery Mobile中将列表项动态添加到无序列表

时间:2012-05-25 06:46:43

标签: javascript jquery html json jquery-mobile

在有人向我指出有关stackoverflow的类似问题之前,我已经搜索并阅读并尝试了所提供的所有解决方案都无济于事。顺便说一下,我理解它会有一个空列表,如下所示:

<ul data-role='listview' data-theme='b' data-inset='true' id='resultsList'>
   <!-- keep empty for dynamically added items -->
</ul>

然后在你的javascript / jquery中你会这样(记住我从JSON对象获取数据):

var resultLength = jsonObject.results.length;
var listItems = [];

for(var i=0;i<resultLength;i++){
   var firstname = jsonObject.results[i].FN;
   var lastname = jsonObject.results[i].SN;

   //Add result to array
   listItems.push("<li><a href='#'>"+firstname+" "+lastname+"</a></li>");
}

//Append array to list and refresh
$('#resultsList').append(listItems.join(' '));
$('#resultsList').listview('refresh');

但是......它没有用。我是jquery的新手,所以这可能是一个真正愚蠢的错误,我正在某个地方。如果有人知道为什么这不起作用,我会很感激!现在已经挣扎了2天。如果需要更多信息,请不要犹豫。

编辑 - 按要求添加JSON

{"results":
[
 {   "GUID":"F45B0504-376C-4772-81C2-B920E23E1332",
     "I#":"4202265241081",
     "FN":"JOHN",
     "DOB":"1942-02-26",
     "SEX":"M",
     "SN":"KHUNOU",
     "U#":"VH00041750",
     "TYPE":"P"},

{    "GUID":"BB69F24F-424A-4B10-8A48-E94197894855",
     "I#":"3909035071082",
     "FN":"JOHN E",
     "DOB":"1939-09-03",
     "SEX":"M",
     "SN":"RIVETT CARNAC",
     "U#":"VH00156354",
     "TYPE":"P"
}
],
"ok":"true"}

1 个答案:

答案 0 :(得分:1)

您的代码看起来很好,并且从等式中取出JSON表明它有效:http://jsfiddle.net/b5h5Y/

由于代码有效,可能会发布JSON本身的样本,或者您访问它的方式,似乎是弱点?