2012-07-22 128 views
1

目前我使用jquery从mysql数据库获取数据,但我想知道如何根据收到的数据为我的网页创建内容。例如,如果我返回一个JSON对象,如{“options”:3},那么我想知道如何在HTML中相应地响应以创建4个列表项。创建数据驱动的html网页

for (i = 0; i < 3; i++){ 
    $('ul#optionsList').append('<li><a href="javascript:void(loadRand());">1.</a>   </li>'); 
     } 

jQuery Mobile的ListView控件

<ul id="optionsList" data-role="listview" data-theme="g"> 
     </ul> 

预先感谢您。

回答

3

你有很多的可能性如何创建和修改DOM元素,这里是jsFiddle例如用于填充无序列表

有关创建新元素see

并为你的页面的更好的建筑设计,你可能会考虑更多信息以使用库如Backbone.js(与全面的初学者教程here

+0

+1 OP,确保您没有通过JSON对象传输任何敏感信息。更好的解决方案IMO将使用PHP。 [看到这个问题](http://stackoverflow.com/questions/2256310/directly-accessing-server-database-via-ajax-without-php-or-some-other-intermedi) – Alen 2012-07-22 21:57:44

+1

@ cek-cek你的JSFiddle前是伟大的,但我使用jQuery Mobile和我的ListView的样式消失,当我尝试追加使用您的代码...我已经使用我正在使用的代码编辑我的问题上面。 – Apollo 2012-07-22 22:31:07

+0

插入新的列表项后,您必须调用'$('ul#optionsList')。listview('refresh');'应用正确的jQuery项目样式。这里是jsFiddle:http://jsfiddle.net/xLmdw/ – 2012-07-22 22:56:10

0

如果您需要与您的数据构建一个巨大的html,请考虑使用模板。 handlerbars.js是一个非常好的选择。 http://handlebarsjs.com/