从动态复选框的父级中提取类名
Extracting class name from parent of dynamic checkbox
我正在尝试从类名中提取数字并将其添加到数组中,但收到错误消息"对象不支持属性或方法'parent'"。我刚才只是在提取类名的部分。
谢谢
<ul id="catbox">
<li class="cat-item cat-item-2">
<a href="http://oursite/events/category/internal-events/">Internal Events</a>
<ul class='children'>
<li class="cat-item cat-item-8">
<a href="http://oursite/events/category/internal-events/civic-and-ceremonial/">Civic and Ceremonial</a>
</li>
<li class="cat-item cat-item-6">
<a href="http://oursite/events/category/internal-events/economy-and-skills-education-tourism-town-centre-business-events/">Economy and Skills – Education, Tourism, Town Centre, Business Events</a>
</li>
<li class="cat-item cat-item-7">
<a href="http://oursite/events/category/internal-events/health-and-social-care/">Health and Social Care</a>
</li>
<li class="cat-item cat-item-13">
<a href="http://oursite/events/category/internal-events/other-internal-events/">Other</a>
</li>
<li class="cat-item cat-item-5">
<a href="http://oursite/events/category/internal-events/safer-communities-vibrant-communities-leisure-trust/">Safer Communities – Vibrant Communities, Leisure Trust</a>
</li>
</ul>
</li>
</ul>
<script type="text/javascript">
$("#test").load("/events/cal-page/");
$(".cat-item").prepend("<input type='"checkbox'" > ");
$(":checkbox").change(function () {
if (this.checked) {
var values = $('input:checkbox:checked').map(function () {
return this.parent().attr('class');
}).get();
alert(values);
$("#test").load("/events/cal-page/?q=" + number + "");
}
});
</script>
.parent()
是一种jQuery
包装元素的方法。callback
中的this
将表示DOM
元素,而不是jQuery
包装的元素。
使用return $(this).parent().attr('class');
$(".cat-item").prepend("<input type='"checkbox'" >");
$(":checkbox").change(function() {
if (this.checked) {
var values = $('input:checkbox:checked').map(function() {
return $(this).parent().attr('class');
}).get();
alert(values);
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<ul id="catbox">
<li class="cat-item cat-item-2"><a href="http://oursite/events/category/internal-events/">Internal Events</a>
<ul class='children'>
<li class="cat-item cat-item-8"><a href="http://oursite/events/category/internal-events/civic-and-ceremonial/">Civic and Ceremonial</a>
</li>
<li class="cat-item cat-item-6"><a href="http://oursite/events/category/internal-events/economy-and-skills-education-tourism-town-centre-business-events/">Economy and Skills – Education, Tourism, Town Centre, Business Events</a>
</li>
<li class="cat-item cat-item-7"><a href="http://oursite/events/category/internal-events/health-and-social-care/">Health and Social Care</a>
</li>
<li class="cat-item cat-item-13"><a href="http://oursite/events/category/internal-events/other-internal-events/">Other</a>
</li>
<li class="cat-item cat-item-5"><a href="http://oursite/events/category/internal-events/safer-communities-vibrant-communities-leisure-trust/">Safer Communities – Vibrant Communities, Leisure Trust</a>
</li>
</ul>
</li>
</ul>
在map()
中使用 jQuery 对象$(this)
而不是this
,如下所示。
$(this).parent().attr('class');
你的问题是你没有使用jQuery元素来调用来自jQuery的parent((方法。
更改此行,此行为 $(this(。
return $(this).parent().attr('class');
相关文章:
- 当数据从excel表中提取时,我想使用动态进度条
- 如何添加动态Id's并在运行时提取它们
- 用于提取基于点概念的变量的动态Regex
- 我正在尝试从 xhtml 文件中动态提取所有
元素,并使用 javascript 将它们放入选择列表中
- 如何在单击按钮后提取javascript中textarea的id(在本例中是动态的)
- 从动态复选框的父级中提取类名
- 从动态页面中提取 html 源代码
- 使用 node.js 和 PhantomJS 提取动态内容
- 使用Javascript提取外部动态链接
- 如何使用jQuery提取动态加载的胡子模板的一部分
- 如何使用python在网页上提取动态时间计数器
- 我的ajax调用没有从PHP/Mysql中提取动态数据
- 从H2提取特定信息,编辑并删除图像中的一些动态值
- 如何使用d3.js从json文件中提取数据来绘制动态图
- 如何从网页中提取javascript动态数据
- AngularJS指令能否从动态内容中提取类名
- 如何使用selenium提取工具提示内容,其中工具提示是由javascript动态加载的
- 从动态网页中提取文本
- 使用DOM从动态html表中提取数据
- 如何提取动态生成元素的id