2013-05-07 71 views
0

jQuery Mobile的网页我创建了jQuery Mobile的主要页面,其中有一个淘汰赛foreach模板生成一个列表,基于与映射插件创建的模型。从模板中的每个项目都有一个按钮,该按钮应链接到使用另一个淘汰赛模板foreach生成的页面。链接与淘汰赛的foreach产生不起作用

该按钮的href填充了具有'#'前缀和页面标识的自定义模型条目。

然而,非按钮实际上打开了任何页面。

看到详细的例子: http://jsfiddle.net/VSVA7/

回答

1

页应该是<体/ >的孩子。但是,您的页面模板代码被另一个<div>元素包裹。

如果你想使用无父一个DOMElement模板

,使用如下

<!-- ko binding: binding_context --> 
    TEMPLATE 
<!-- /ko --> 

在这种情况下KO虚拟元素,

<!-- ko foreach: Questions --> 
<div data-role="page" data-bind="attr: { id: Id }" data-add-back-btn="true"> 
    <div data-role="content" data-bind="html: Id"> 
    </div> 
</div> 
<!-- /ko -->  

我更新了jsfiddle并粘贴其完整的HTML代码。

<div data-role="page" id="page1"> 
    <div data-role="header" data-theme="b"> 
     <h1>Main Page</h1> 
    </div> 
    <div data-role="content" style="width:100%;"> 
     <ul data-role="listview" data-bind="foreach: Questions"> 
      <li class="listItem"> 
       <a data-bind="attr: { href: IdUrl }, text: Subject" ></a> 
      </li> 
     </ul> 
    </div> 
</div> 


<!-- ko foreach: Questions --> 
<div data-role="page" data-bind="attr: { id: Id }" data-add-back-btn="true"> 
    <div data-role="header" data-theme="b"> 
     <h1 data-bind="text: Subject"></h1> 
    </div> 
    <div data-role="content" data-bind="html: Id"> 
    </div> 
</div> 
<!-- /ko -->