2012-09-12 57 views
1

我是JQuery + JQuery手机新手。JQuery Mobile动态分页

我正在尝试为样式目的创建动态div元素。我从AJAX调用中拉入JSON,将其抛入无序列表中,并将其包装到div中。 AJAX + JSON工作得很好,但是当我在脚本中创建DIV并将其附加到另一个div容器时,它不起作用。我在这方面做了大量的阅读,但是我发现的解决方案似乎都不适用于div部分。

我已经简化我的代码到以下几点:

HTML:

<div data-role="page"> 
     <div data-role="header"> 
      <h1>Page Title</h1> 
     </div><!-- /header --> 

     <div id="someDiv" data-role="content"></div> 
     <div id="anotherDiv"></div> 
    </div> 

的JavaScript:

$(document).ready(function() { 
    var newDiv = '<div id="d1"><p>This will attach to the content</p></div>'; 
    var aDiv = '<div id="test" data-role="page"><p>This never gets displayed because of data-role?</p></div>'; 
    $("#someDiv").html(newDiv).trigger('create'); 
    $("#anotherDiv").html(aDiv).trigger('create'); 
});​ 

aDiv怎么不重视anotherDiv。我怀疑这与aDiv中的data-role="page"属性有关。

JSFiddle Link

我一直停留在这个1+一天。任何帮助是极大的赞赏!!

+0

这似乎是工作,我的一个分支。你究竟发生了什么事情呢?我不清楚。 – user1167442

+0

请注意'newDiv'如何附加到一个div,但'aDiv'没有附加到一个div,因为'data-role =“page”'。我无法弄清楚为什么'aDiv'不会附加到div id'anotherDiv'。 –

回答

0

实际上,您的aDiv正在附加,只是没有显示(您可以在Firebug/WebInspector/DragonFly中查看您的标记并查看此内容),因为一次只显示一个JQM页面。

如果您要附加一个新的页面,您可以尝试将其添加到您的body

这是你的小提琴

http://jsfiddle.net/49LgB/

+0

非常感谢!我现在看到'page'实际上指向了另一个隐藏的区域,直到链接到。我无法相信我整天都在b my我的脑袋。谢谢!!! –