Javascript ';这';使用jQuery和CoffeeScript设置不正确
我试图编写一个相当简单的“全选”功能,但我的javascript出现了错误。代码相当直截了当,因此我将发布它:Javascript ';这';使用jQuery和CoffeeScript设置不正确,javascript,jquery,coffeescript,Javascript,Jquery,Coffeescript,我试图编写一个相当简单的“全选”功能,但我的javascript出现了错误。代码相当直截了当,因此我将发布它: (function() { $(function() { var all_check_box; all_check_box = '#tournament_league_127'; return $(all_check_box).change(function() { return $('.leagueCheckBox').each(functio
(function() {
$(function() {
var all_check_box;
all_check_box = '#tournament_league_127';
return $(all_check_box).change(function() {
return $('.leagueCheckBox').each(function() {
return this.prop("checked", true);
});
});
});
}).call(this);
此代码由以下CoffeeScript生成:
$ ->
all_check_box = '#tournament_league_127'
$(all_check_box).change ->
$('.leagueCheckBox').each ->
this.prop("checked", true)
但是,当我单击#锦标赛(u league)127时,我得到以下错误:
this.prop不是函数。我真的不确定我做错了什么。任何帮助都将不胜感激。此
指的是元素而不是jQuery对象,因此您需要
return $(this).prop("checked", true);
此
引用的是元素,而不是jQuery对象,因此您需要
return $(this).prop("checked", true);
它应该是$(这个).prop…
(假设jQuery 1.6+,在那之前.prop
不存在)。它应该是$(这个).prop…
(假设jQuery 1.6+,在那之前.prop
不存在)。我不明白。。。此
和$(此)
之间有什么区别?@Erica:此
是事件处理程序绑定到的元素$(this)
使用this
(DOM元素)作为参数调用jQuery,并返回jQuery对象。您可以将其缩短<代码>$('.leagueCheckBox')。道具(“选中”,正确)
@FelixKling:我明白了,谢谢这个
在JavaScript中使用,这样函数就可以很容易地引用调用函数的对象,即使没有人知道该对象是什么,是吗?我不明白。。。此
和$(此)
之间有什么区别?@Erica:此
是事件处理程序绑定到的元素$(this)
使用this
(DOM元素)作为参数调用jQuery,并返回jQuery对象。您可以将其缩短<代码>$('.leagueCheckBox')。道具(“选中”,正确)@FelixKling:我明白了,谢谢这个
在JavaScript中使用,这样函数就可以很容易地引用调用函数的对象,即使没有人知道该对象是什么,对吗?@Max:看看刚才由am not i am发布的评论,这是正确的答案,因为它修复了问题并删除了不必要的代码。感谢您指出这一点。我把它给了你,因为我不能给另一个人,你的回答立即解决了我的问题。谢谢。这家伙并没有把它作为答案。。。但是我建议你使用它。@Max:看一看am not I am刚刚发表的评论——这是正确的答案,因为它修复了问题并删除了不必要的代码。谢谢你指出这一点。我把它给了你,因为我不能给另一个人,你的回答立即解决了我的问题。谢谢。这家伙并没有把它作为答案。。。但我建议你用这个。