Jquery 把桌子的一部分放到一个div中

Jquery 把桌子的一部分放到一个div中,jquery,html,Jquery,Html,使用jQuery,我如何将普通表的一部分(没有ID或类)获取到div元素中?这张桌子是一份简单的午餐菜单,一周中的几天都在它自己的第四个元素中,然后是休息、午餐和甜点,每一天都有各自的td元素描述。我想在星期一和星期二,星期二和星期三之间,等等 这是我正在准备的一张样品表 星期一 早餐 谷类食品 午餐 汉堡包 甜点 蛋糕 星期二 早餐 百吉饼 午餐 鸡 甜点 曲奇 星期三 早餐 鸡蛋 午餐 三明治 甜点 馅饼 我想在星期一到星期二之间把所有东西都拿走 星期一是第0排,星期二是第5排。因此可能

使用jQuery,我如何将普通表的一部分(没有ID或类)获取到div元素中?这张桌子是一份简单的午餐菜单,一周中的几天都在它自己的第四个元素中,然后是休息、午餐和甜点,每一天都有各自的td元素描述。我想在星期一和星期二,星期二和星期三之间,等等

这是我正在准备的一张样品表


星期一
早餐
谷类食品
午餐
汉堡包
甜点
蛋糕
星期二
早餐
百吉饼
午餐
鸡
甜点
曲奇
星期三
早餐
鸡蛋
午餐
三明治
甜点
馅饼
我想在星期一到星期二之间把所有东西都拿走

星期一是第0排,星期二是第5排。因此可能会涉及:

var rows = $("selector-for-the-table tr").slice(1, 6);
// Get the info from `rows`
例如:

var行=$(“表tr”).slice(1,6);
显示(“所选数据:”);
行。每个(函数(){
显示($(this.find(“td”).text());
});
功能显示(msg){
$(“”).html(字符串(msg)).appendTo(document.body);
}
这给了我们:

Selected data: cereal hamburger cake 选定数据: 谷类食品 汉堡包 蛋糕这里有一个方法-


谢谢你的帮助,杰。最后我做了这样的事情:

for (var i = 0; i < menuDays.length; i++) { // Sunday - Saturday array
        if (i > 0 && i < 6) { // skip Sunday and Saturday
            start = $("table th:contains(" + menuDays[i] + ")").parent().index();
            if (i == 5) {
                end = $("table th:contains(Friday)").parent().siblings().length + 1;
            } else {
                end = $("table th:contains(" + menuDays[i + 1] + ")").parent().index();
            }
            rows = $("#foodTable tr").slice(start + 1, end).clone();
            $("#foodOption" + menuDays[i]).html(rows);
            $("#foodOption" + menuDays[i] + " tr").wrapAll("<table></table>");
        }
    }
for(var i=0;i0&&i<6){//跳过周日和周六
start=$(“表th:contains(“+menuDays[i]+”))。父项().index();
如果(i==5){
end=$(“表th:contains(星期五)”).parent().sides().length+1;
}否则{
end=$(“表th:contains(“+menuDays[i+1]+”))。parent().index();
}
rows=$(“#foodTable tr”).slice(开始+1,结束).clone();
$(“#foodOption”+menuDays[i]).html(行);
$(“#食品添加剂”+菜单日[i]+“tr”).wrapAll(“”);
}
}

哪一部分给您带来了麻烦?你被困在哪里?你试过什么?太棒了!我要试试你和杰伊·布兰查德的答案。非常感谢!这太棒了!我要试试你和T.J的解决方案。非常感谢!不客气。我喜欢这种方法,因为你不必计算索引号。您可以用变量替换“星期一”和“星期二”,这些变量的值可以用其他方法设置。再次感谢!我刚刚在我的测试页面上尝试了这个方法,它与我正在进行的更大的项目配合得非常好。事实上,当我尝试在各自的开始和结束变量中交换星期一-星期二和星期二-星期三时,它非常适合抓取第一天,它不会抓取请求的日期和内容/想想看——选择星期一/星期二就是星期一。选择星期二/星期三将得到星期二。这是因为端点(星期三)的行为与第一个示例中的星期二端点类似——它是切片结束的地方。如果要选择一个起点,使所有内容都结束,则必须从
slice()
中删除“end”变量。 Selected data: cereal hamburger cake
var start = $('table th:contains(Monday)').parent().index();
var end = $('table th:contains(Tuesday)').parent().index();
console.log(start +' '+ end);
var myRows = $('tr').slice(start, end).clone();

$('div').html(myRows);
$('div tr').wrapAll('<table border="1"></table>');
var start = $('table th:contains(Monday)').parent().index();
var end = $('table th:contains(Thursday)').parent().index();
console.log(start +' '+ end);
if(-1 == end) { // if the endpoint doesn't exist, get everything from start to end.
    var myRows = $('tr').slice(start).clone();
} else {
    var myRows = $('tr').slice(start, end).clone();
}
for (var i = 0; i < menuDays.length; i++) { // Sunday - Saturday array
        if (i > 0 && i < 6) { // skip Sunday and Saturday
            start = $("table th:contains(" + menuDays[i] + ")").parent().index();
            if (i == 5) {
                end = $("table th:contains(Friday)").parent().siblings().length + 1;
            } else {
                end = $("table th:contains(" + menuDays[i + 1] + ")").parent().index();
            }
            rows = $("#foodTable tr").slice(start + 1, end).clone();
            $("#foodOption" + menuDays[i]).html(rows);
            $("#foodOption" + menuDays[i] + " tr").wrapAll("<table></table>");
        }
    }