Javascript Jquery类未响应。尽管已在选择器中列出,但仍单击()

Javascript Jquery类未响应。尽管已在选择器中列出,但仍单击(),javascript,jquery,html,Javascript,Jquery,Html,我有几个标签在一个网页上,可以点击,所有共享类“btn”。在控制台中,如果我使用选择器$('.btn')除其他元素外,确实会出现以下元素: <label id=​"skillstable_Certification" class=​"row btn">​Certification​</label>​, <label id=​"skillstable_Compliance" class=​"row btn">​Compliance​</label>​

我有几个标签在一个网页上,可以点击,所有共享类“btn”。在控制台中,如果我使用选择器
$('.btn')除其他元素外,确实会出现以下元素:

<label id=​"skillstable_Certification" class=​"row btn">​Certification​</label>​,
<label id=​"skillstable_Compliance" class=​"row btn">​Compliance​</label>​,
<label id=​"skillstable_Technology" class=​"row btn">​Technology​</label>​,
<label id=​"skillstable_version(s)​" class=​"column btn">​Version(s)​</label>,​
<label id=​"skillstable_startdate" class=​"column btn">​StartDate​</label>​,
<label id=​"skillstable_enddate" class=​"column btn">​EndDate​</label>​,
<label id=​"skillstable_elapsedtime" class=​"column btn">​ElapsedTime​</label>,​
<label id=​"skillstable_expertiserating" class=​"column btn">​ExpertiseRating​</label>,​
​证明​​,
​顺从​​,
​技术​​,
​版本​,​
​起始日期​​,
​结束日期​​,
​拖延时间​,​
​专家​,​
与HTML匹配的:

</fieldset>
  <label id="fs_skillstable_heading" class="fs btn heading skillstable">Skills Table</label><br class="">
  <label id="skillstable_Certification" class="row btn">Certification</label>
  <label id="skillstable_Compliance" class="row btn">Compliance</label>
  <label id="skillstable_Technology" class="row btn">Technology</label><br class="">
  <label id="skillstable_version(s)" class="column btn">Version(s)</label><br class="">
  <label id="skillstable_startdate" class="column btn">StartDate</label><br class="">
  <label id="skillstable_enddate" class="column btn">EndDate</label><br class="">
  <label id="skillstable_elapsedtime" class="column btn">ElapsedTime</label><br class="">
  <label id="skillstable_expertiserating" class="column btn">ExpertiseRating</label><br class="">
</fieldset>

技能表
证明 顺从 技术
版本
起始日期
结束日期
ElapsedTime
专业化
但是,这些元素并没有在('click',function(){…})
函数上注册('click',function(){…}),该函数有一个console.log()部分来显示它已被单击。他们都有
.btn
课程,所以我在这里完全迷路了。我试图创建一个用于持久性的数组,并使用.push()创建了一个快速变量,以显示我单击的所有元素,这样我就可以使用该字符串创建一个持久性URL,但注意到这些部分没有注册

元素的生成在自调用函数
(函数TCC(){…})()中进行,所以我尝试将它们从该函数中拉出并单独调用它们,但这也不起作用。我还将函数从.click()切换到.on('click',function(){}),但没有用

是网页。

试试这个;用法:

编辑:@David Thomas提到了
this.id
将优于
$(this).attr('id')

$(document).on('click','.btn',function() {
    var whichPart = this.id;
    console.log(whichPart);
});
试试这个;用法:

编辑:@David Thomas提到了
this.id
将优于
$(this).attr('id')

$(document).on('click','.btn',function() {
    var whichPart = this.id;
    console.log(whichPart);
});

您可以在以下链接上测试示例代码:


您可以在以下链接上测试示例代码:


出现此问题是因为您在“column button generator”循环之前绑定了click事件。最简单的修复方法是使用“实时”事件


或者,为循环创建一个回调,然后绑定click事件。

发生此问题的原因是您在“column button generator”循环之前绑定了click事件。最简单的修复方法是使用“实时”事件


或者,为循环创建回调并绑定单击事件。

您的页面在chrome中为我工作,我在左侧部分单击了专业知识/技能/工具等,如果您需要,它会在右侧的橙色部分显示我单击的链接

如果已经打开了console/developer工具,那么它可以在IE中工作,这可能是因为您在代码中使用了console.log语句

参考这个


您的页面在chrome中为我工作,我单击了左侧部分的专业知识/技能/工具等,它显示了我在右侧橙色部分单击的链接,如果这是您想要的

如果已经打开了console/developer工具,那么它可以在IE中工作,这可能是因为您在代码中使用了console.log语句

参考这个



你也可以分享你的jQuery端吗?还有哪一部分?所有这些都是内联在网页上的,你有很多代码在里面,很可能只是一些缺少的分号或其他东西破坏了你所有的JS$('.btn')。on('click',function(){});应该很好,谢谢你的提示。我的编辑器和JS Beautify和Lint找不到问题,我会假设它缺少一个分号;它将打破这一切,而不仅仅是这几个选择。还有其他建议吗?@marcjae的回答是否突出了这个问题?我只是不知道“绑定点击事件”是什么意思,并且假设marcjae意味着我的生成行需要在(函数TCC(){})之外重新定义范围,但我不确定您是否也可以共享jQuery端?哪个附加部分?所有这些都是内联在网页上的,你有很多代码在里面,很可能只是一些缺少的分号或其他东西破坏了你所有的JS$('.btn')。on('click',function(){});应该很好,谢谢你的提示。我的编辑器和JS Beautify和Lint找不到问题,我会假设它缺少一个分号;它将打破这一切,而不仅仅是这几个选择。还有其他建议吗?@marcjae的回答是否突出了这个问题?我只是不知道“绑定点击事件”是什么意思,并且假设marcjae意味着我的生成行需要在(函数TCC(){})之外重新定义范围,但我不确定检索
id
jQuery会不必要地使事情复杂化,只需使用
this.id
检索
id
jQuery不必要地使事情复杂化,只需使用
this.id
live
已被弃用-在
上使用类似barlasapaydin的选择器参数shows@marcjae在生成循环之前“绑定单击事件”是什么意思?
live
不推荐使用-将
on
与类似barlasapaydin的选择器参数一起使用shows@marcjae我绑定点击是什么意思事件“在生成循环之前”?单击“技能表”的右栏子部分,而不是左侧单击“技能表”的右栏子部分,而不是左侧