Я пытаюсь написать какую-нибудь функцию CoffeScript, которая проверяет все флажки в таблице после установки флажка в th.
Моя функция в CoffeeScript выглядит следующим образом:
$("table.tableview th input:checkbox").live 'click', ->
checkedStatus = this.checked
$("table.tableview tbody tr td:first-child input:checkbox").each ->
this.checked = checkedStatus
Это прекрасно работает для проверки всех флажков.Однако при снятии флажка это не работает.Скомпилированный JS выглядит следующим образом:
$("table.tableview th input:checkbox").live('click', function() {
var checkedStatus;
checkedStatus = this.checked;
return $("table.tableview tbody tr td:first-child input:checkbox").each(function() {
return this.checked = checkedStatus;
});
});
Он не работает, потому что после того, как для первого установлено значение false, возвращение функции будет ложным.Я, однако, понятия не имею, как подавить это поведение возврата по умолчанию сценария кофе.Пожалуйста помоги.
Когда я добавляю "true" в соответствии с предложением Фламбино, я получаю следующий JS
$("table.tableview th input:checkbox").live('click', function() {
var checkedStatus;
checkedStatus = this.checked;
$("table.tableview tbody tr td:first-child input:checkbox").each(function() {
return this.checked = checkedStatus;
});
return true;
});
Единственный способ получить выражение return внутри функции - это поместить его полностьюкак это:
$("table.tableview tbody tr td:first-child input:checkbox").each ->
this.checked = checkedStatus
true
Что я делаю не так?Спасибо за помощь до сих пор