Javascript 单击复选框上的事件将不会触发

Javascript 单击复选框上的事件将不会触发,javascript,jquery,Javascript,Jquery,以下是标记: $('.clsEvent输入[type=checkbox]')。更改(函数(e){ 调试器; var title=$(e.val(); }); 这是构建列表的函数,在document ready函数中调用: 函数popServiceUserEvents(e){ $.ajax({ 类型:“POST”, url:“@url.Action”(“GetServiceUserEvents”)/”+e, 成功:功能(数据){ 如果(data.events.length>0){ 对于(var

以下是标记:

$('.clsEvent输入[type=checkbox]')。更改(函数(e){
调试器;
var title=$(e.val();
});
这是构建列表的函数,在document ready函数中调用:
函数popServiceUserEvents(e){
$.ajax({
类型:“POST”,
url:“@url.Action”(“GetServiceUserEvents”)/”+e,
成功:功能(数据){
如果(data.events.length>0){
对于(var i=0;i”+数据.events[i].Text+””);
}
}
},
错误:函数(jqXHR、textStatus、errorshown){
警报(错误抛出);
}
});
}

  • 事件1
  • 事件2

这是因为您的选择器错误

请尝试以下内容:

 $('input[type=checkbox].clsEvent').change(function(e) {
    debugger;
    var title = $(e).val();

});

您试图在类.clsEvent中获取输入,因此找不到任何内容,因为您的输入具有类clsEvent。

错误的选择器

您的选择器错误,您正在使用
clsEvent
类搜索元素内的复选框

这些选择器是正确的,请选择您想要的;):

.clsEvent

输入[type=checkbox].clsEvent

.ulEvent输入[类型=复选框]

试图从
事件对象访问
.val()

而且
e
是一个
事件对象
,您的元素是
$(e.target)

$('input[type=checkbox].clsEvent')。更改(函数(e){
var title=$(e.target).val();
控制台日志(标题);
});

  • 事件1
  • 事件2

从选择器中删除“input”(包括空格)。将其更改为
$(“.clsEvent”).change
仍然不会触发。我已经尝试了所有这些选择器,但我的调试器没有被命中。我已经尝试了所有这些选择器,但它没有命中我的调试器语句。是的,我知道var title是垃圾,我只想进入我的调试语句,知道它将被命中,然后我将把真正的代码放在适当的位置。@bilpor这是答案吗为你工作?如果没有,那么你需要发布更多的代码…同意@evolutionxbox,因为如果你运行代码段
更改事件
,则会触发。没有:(我想可能是因为我将其放置在匿名函数中,所以我将其取出,但仍然没有乐趣。