Jquery 使用类查找第一个元素,使用类附加头元素

Jquery 使用类查找第一个元素,使用类附加头元素,jquery,html,Jquery,Html,我有一个无序列表,如下所示: <ul> <li class="week6"></li> <li class="week6"></li> <li class="week6"></li> <li class="week6"></li> <li class="week6"></li> </ul> 我想根

我有一个无序列表,如下所示:

<ul>
    <li class="week6"></li>
    <li class="week6"></li>
    <li class="week6"></li>
    <li class="week6"></li>
    <li class="week6"></li>
</ul>
我想根据它的类在ul之前添加一个header元素,其中包含文本。像这样:

<h1 class="week">Week 6</h1>
<ul>
    <li class="week6"></li>
    <li class="week6"></li>
    <li class="week6"></li>
    <li class="week6"></li>
    <li class="week6"></li>
</ul>
第6周
header元素中的内容将基于类,例如,如果类是“week6”,则h1将是“week6”,“week5”类将在h1中输出“week5”

现在我遇到了一个问题,就是在ul之前添加h1标签,其中包含与该类相关的列表项的特定内容

$(“ul”)。每个(函数(){
$("ul").each(function(){
  var weeknum = $(this).children('li:first').prop('class');
  var weeknum = weeknum.match(/\d+/);
  /* Remove if first li is only a placeholder: $(this).children('li:first').remove(); */
  $(this).before('<h1 class="week">Week '+weeknum+'</h1>');
});
var weeknum=$(this).children('li:first').prop('class'); var weeknum=weeknum.match(/\d+/); /*如果第一个li只是占位符,则删除:$(this).children('li:first').Remove()*/ $(此)。在('Week'+weeknum+'')之前; });
小提琴:

$(“ul”)。每个(函数(){
var weeknum=$(this).children('li:first').prop('class');
var weeknum=weeknum.match(/\d+/);
/*如果第一个li只是占位符,则删除:$(this).children('li:first').Remove()*/
$(此)。在('Week'+weeknum+'')之前;
});
小提琴:

$(“ul”)。每个(函数(){
var weeknum=$(this).children('li:first').prop('class');
var weeknum=weeknum.match(/\d+/);
/*如果第一个li只是占位符,则删除:$(this).children('li:first').Remove()*/
$(此)。在('Week'+weeknum+'')之前;
});
小提琴:

$(“ul”)。每个(函数(){
var weeknum=$(this).children('li:first').prop('class');
var weeknum=weeknum.match(/\d+/);
/*如果第一个li只是占位符,则删除:$(this).children('li:first').Remove()*/
$(此)。在('Week'+weeknum+'')之前;
});


Fiddle:

您是否自己尝试过提出解决方案,还是只是在寻找答案?我可以粗心大意,哈哈,只是好奇而已。无论如何,看看jquery选择器和prepend方法。我很难弄清楚实现这一点的逻辑和jquery语法。您是否尝试自己想出解决方案,或者只是在寻找答案?我可以粗心大意,哈哈,只是好奇而已。无论如何,看看jquery选择器和prepend方法。我很难弄清楚实现这一点的逻辑和jquery语法。您是否尝试自己想出解决方案,或者只是在寻找答案?我可以粗心大意,哈哈,只是好奇而已。无论如何,看看jquery选择器和prepend方法。我很难弄清楚实现这一点的逻辑和jquery语法。您是否尝试自己想出解决方案,或者只是在寻找答案?我可以粗心大意,哈哈,只是好奇而已。无论如何,看看jquery选择器和prepend方法。我很难弄清楚逻辑以及用什么jquery语法来实现这一点。为什么要删除第一个li???@Kierchon OP不清楚第一个
li
是否只是一个palceholder。match是jquery函数吗?我在控制台里得到这个。“Object[Object Object]没有方法‘match’”,也没有。第一个li不是占位符,它是列表中的一部分。@JustinClarke
match
is.js。检查
.prop('class')
是否在副本的第二行代码上。当我最初发布我的答案时,我犯了一个错误,没有包括它。@Mooseman,是的,我自己添加了它,并且意识到你也添加了它。你为什么要删除第一个li???@Kierchon OP不清楚第一个
li
是否只是一个palceholder。match是jQuery函数吗?我在控制台里得到这个。“Object[Object Object]没有方法‘match’”,也没有。第一个li不是占位符,它是列表中的一部分。@JustinClarke
match
is.js。检查
.prop('class')
是否在副本的第二行代码上。当我最初发布我的答案时,我犯了一个错误,没有包括它。@Mooseman,是的,我自己添加了它,并且意识到你也添加了它。你为什么要删除第一个li???@Kierchon OP不清楚第一个
li
是否只是一个palceholder。match是jQuery函数吗?我在控制台里得到这个。“Object[Object Object]没有方法‘match’”,也没有。第一个li不是占位符,它是列表中的一部分。@JustinClarke
match
is.js。检查
.prop('class')
是否在副本的第二行代码上。当我最初发布我的答案时,我犯了一个错误,没有包括它。@Mooseman,是的,我自己添加了它,并且意识到你也添加了它。你为什么要删除第一个li???@Kierchon OP不清楚第一个
li
是否只是一个palceholder。match是jQuery函数吗?我在控制台里得到这个。“Object[Object Object]没有方法‘match’”,也没有。第一个li不是占位符,它是列表中的一部分。@JustinClarke
match
is.js。检查
.prop('class')
是否在副本的第二行代码上。当我最初发布我的答案时,我犯了一个错误,没有把它包括在内。@Mooseman,是的,我自己加上了,并且意识到你也加了。