Ошибка синтаксиса в инструкции Simple Javascript if

58
5

У меня есть следующий, который, как предполагается записать значение 6 на печенье NotStarted если Checkbox NotStarted проверяется и значение -1 Если флажок не установлен

$("#NotStarted").change(function () 
{ $.cookie("NotStarted", if($("#NotStarted").is(':checked') == "true") {6} else {-1} , { expires: 20 * 365 }); return false; });

Ну, это предполагается, так как у меня есть синтаксические ошибки... Что я делаю неправильно здесь?

спросил(а) 2013-12-07T12:27:00+04:00 6 лет, 10 месяцев назад
1
Решение
59

замещать

if($("#NotStarted").is(':checked') == "true")

С

if($("#NotStarted").is(':checked'))

ответил(а) 2013-12-07T12:28:00+04:00 6 лет, 10 месяцев назад
92

Вы должны использовать тернарный оператор

$("#NotStarted").change(function () {
$.cookie("NotStarted", $("#NotStarted").is(':checked') ? 6 : -1, {
expires: 20 * 365
});
return false;
});

выглядит так, что это можно упростить как (потому что вы можете использовать проверенное свойство флажка NotStarted)

$("#NotStarted").change(function () {
$.cookie("NotStarted", this.checked ? 6 : -1, {
expires: 20 * 365
});
return false;
});

ответил(а) 2013-12-07T12:28:00+04:00 6 лет, 10 месяцев назад
42

Попробуй это:

$("#NotStarted").change(function ()

{ $.cookie("NotStarted", $("#NotStarted").is(':checked') ? 6:-1 , { expires: 20 * 365 });

return false; });

ответил(а) 2013-12-07T12:35:00+04:00 6 лет, 10 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема