如何在Jquery / Jquery Mobile中从分离的表行创建嵌套页面?

时间:2012-02-21 16:38:51

标签: javascript jquery jquery-mobile html-table detach

我有一个对象,我正在填充每个包含2个表行的对象。每个“子对象”应该与原始表分离并“删除”到我正在创建的新表中,该表应该位于JQM表子页面中。

5月样本包含1个包含5行的表,我想将其拆分为3个子页面。

这就是我所拥有的:

var splitRows, takeAway;

// 3 is calculated by total-rows/rows-per-subpage 
for( i = 0; i < 3; i++ ){

    // my table object ends up looking like this
    // with each loop adding another object with 2 rows
    splitRows = [[tr.even, tr.odd], [tr.even, tr.odd]],

    // here I'm grabing the current object, which should be two rows
    takeAway = splitRows[i];

    // detach and wrap in new page
    newPage = takeAway.detach()
                 .wrap( "<div data-role='page' id='some"+i+"'><div data-role='content'><table id='" + tableId + "'></table></div></div>" )
                 .closest('div:jqmData(role="content")')
                 .prepend('<div data-role="header"><h1>hello</h1></div>')
                 .parent()
                 .appendTo( $.mobile.pageContainer);
    }

问题:
我没有得到包含两行的表的嵌套页面,而是每行的一个嵌套页面,只有一个表和这一行。谁能告诉我我做错了什么?

for循环运行三次,这是正确的,takeAway变量也正确地得到2,2,1行,但后来出现了问题......

修改
仍然在尝试...我认为它必须与 slice 相关联,创建一个包含2个元素的新对象,其中每个都被包装,并且......每个都没有在任何地方指定。 ..所以我会改变我的问题,如何一次包装多个元素?

1 个答案:

答案 0 :(得分:0)

得到它...在一个包装中包含多个元素,使用 wrapAll()而不是简单地换行()。