0

我有一个对象,我用每个包含 2 个表行的对象填充。每个“子对象”都应该从原始表中分离出来,并“放入”我正在创建的新表中,该表应该位于 JQM 表子页面中。

可能样本包含 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 循环运行了 3 次,这是正确的,takeAway 变量也正确地获得了 2,2,1 行,但随后出现了问题......

编辑:
仍在尝试...我认为它必须与创建一个包含 2 个元素的新对象的切片有关,每个元素都被包装并且......只有每个元素都没有在任何地方指定......所以我将我的问题改为如何制作一次包装多个元素?

4

1 回答 1

0

明白了...要将多个元素包装在一个包装中,请使用wrapAll()而不是简单的 wrap()。

于 2012-02-21T17:12:11.037 回答