2012-11-01 17 views
1

我正在使用jQuery Mobile和knockout.js的移动网站上工作。我有一个(类型)与jQuery Mobile的弹出窗口和列表视图和敲除数据绑定弹出div内复杂的情况下,我不能得到它的工作。jQuery Mobile Popup和ListView,以及Knockout.js数据绑定弹出div里面 - 不工作

我有一个嵌套的警报列表,如下所示。对于每一天,它创建一个列表分隔行。然后在每一天内,每个闹钟都有一排。

<ul id="alarmslist" data-bind="foreach: days" data-role="listview"> 
    <li data-role="list-divider"><span data-bind="text: date"></span></li> 
    <!-- ko foreach: alarms1 --> 
    <li> 
     <a href="#popupBasic" data-rel="popup"><span data-bind="text: alarmName"></span></a> 
     <section id="popupBasic" data-role="popup" data-corners="true" data-history="false" data-overlay-theme="a"> 
      <a href="#" class="ui-btn-right" data-icon="delete" data-iconpos="notext" data-rel="back" data-role="button" data-theme="c">Close</a> 
      <ul data-role="listview" data-inset="true"> 
       <li data-role="divider" data-theme="a">Alarm Options</li> 
       <li><section class="alarmDetail"><span data-bind="text: alarmID"></span></section></li> 
       <li><a href="#">Go to Data</a></li> 
       <li><a href="#">Acknowledge</a></li> 
      </ul> 
     </section> 
    </li> 
    <!-- /ko --> 
</ul> 

我需要的弹出窗口小部件连接到报警行,这样当点击了李行的弹出窗口与该行选项的列表。这应该可用于每一行。每行的选项取决于alarmID键。

这是问题发生的地方。我试图将数据绑定到alarmID字段(这是alarm1数组的一部分),以便下一个操作知道如何处理正确的警报。但是,我得到一个基因敲除错误,因为它找不到alarmID()。我猜jQuery Mobile正在DOM底部创建弹出部分,远低于我的视图和viewmodel为淘汰赛部分定义的位置。

无论如何,有没有人有任何想法如何“修复”这种情况?或者,知道解决方法?或者,甚至还有其他解决方案?

+0

你也可以发布你的JavaScript或使你的问题工作jsfiddle.net?这里没有足够的信息来真正给你一个答案。 –

回答