Simple Javascript if语句中的语法错误

时间:2013-12-07 09:27:26

标签: javascript jquery

我有以下内容,如果选中6 NotStarted,则应该在Cookie Checkbox上写NotStarted的值,如果是{1}}则值为-1复选框未选中

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

好吧应该这样做,因为我有语法错误...... 我在这里做错了什么?

3 个答案:

答案 0 :(得分:4)

您需要使用ternary operator

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

看起来可以简化为(因为您可以使用复选框NotStarted的checked属性)

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

答案 1 :(得分:1)

替换

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

使用

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

答案 2 :(得分:0)

试试这个:

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

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

    return false; });