Javascript 在本地存储器中存储复选框

Javascript 在本地存储器中存储复选框,javascript,jquery,checkbox,local-storage,Javascript,Jquery,Checkbox,Local Storage,我可以按自己的方式存储文本,但无法使复选框正常工作。无论是否选中,它都将复选框值存储为“开”。如何设置在默认情况下存储“off”,在选中时存储“on” 能够实现这一目标的东西: var value = $(this).val() && $(this).prop(checked); JS小提琴: 希望这有助于: var value = $(this).val(); var name = $(this).attr('name'); if($(this).hasClass('c

我可以按自己的方式存储文本,但无法使复选框正常工作。无论是否选中,它都将复选框值存储为“开”。如何设置在默认情况下存储“off”,在选中时存储“on”

能够实现这一目标的东西:

var value = $(this).val() && $(this).prop(checked);
JS小提琴:

希望这有助于:

var value = $(this).val();
var   name = $(this).attr('name');

if($(this).hasClass('checkers')){
    value = $(this).is(":checked")
    if(value){
        value='on';
    }else{
        value='off';
    }
}

您不应使用.val检查复选框是否选中,请使用.is('checked')

希望这对您有所帮助:

var value = $(this).val();
var   name = $(this).attr('name');

if($(this).hasClass('checkers')){
    value = $(this).is(":checked")
    if(value){
        value='on';
    }else{
        value='off';
    }
}

您不应使用.val检查复选框是否选中,请使用.is('checked')

希望这对您有所帮助:

var value = $(this).val();
var   name = $(this).attr('name');

if($(this).hasClass('checkers')){
    value = $(this).is(":checked")
    if(value){
        value='on';
    }else{
        value='off';
    }
}

您不应使用.val检查复选框是否选中,请使用.is('checked')

希望这对您有所帮助:

var value = $(this).val();
var   name = $(this).attr('name');

if($(this).hasClass('checkers')){
    value = $(this).is(":checked")
    if(value){
        value='on';
    }else{
        value='off';
    }
}


不应使用.val检查复选框是否已选中,请使用.is('checked')

而不是使用
.val()
获取应使用的复选框或属性的状态
。checked

   $('input, select, textarea').each(function () {
        var value = ($(this).is('[type="checkbox"]')) ? this.checked :$(this).val(),
            name = $(this).attr('name');
        console.log('Saving');
        console.log(name + ':' + value);
        Survey[name] = value;
    });

工作示例:

而不是使用
.val()

   $('input, select, textarea').each(function () {
        var value = ($(this).is('[type="checkbox"]')) ? this.checked :$(this).val(),
            name = $(this).attr('name');
        console.log('Saving');
        console.log(name + ':' + value);
        Survey[name] = value;
    });

工作示例:

而不是使用
.val()

   $('input, select, textarea').each(function () {
        var value = ($(this).is('[type="checkbox"]')) ? this.checked :$(this).val(),
            name = $(this).attr('name');
        console.log('Saving');
        console.log(name + ':' + value);
        Survey[name] = value;
    });

工作示例:

而不是使用
.val()

   $('input, select, textarea').each(function () {
        var value = ($(this).is('[type="checkbox"]')) ? this.checked :$(this).val(),
            name = $(this).attr('name');
        console.log('Saving');
        console.log(name + ':' + value);
        Survey[name] = value;
    });

工作示例:

工作小提琴

val函数的工作方式与复选框的工作方式不同,从复选框中获取true或false的方法是使用is(“:checked”)函数

$(this).is(':checked')
fiddle是代码的一个修改版本,它修改了一行代码,这行代码似乎可以正常工作,它将if-else简化为变量“value”的检查,以查看它是否是复选框

($(this).attr('type','checkbox') ? value = $(this).val() : value = $(this).is(':checked'));

我希望这能有所帮助。

工作小提琴

val函数的工作方式与复选框的工作方式不同,从复选框中获取true或false的方法是使用is(“:checked”)函数

$(this).is(':checked')
fiddle是代码的一个修改版本,它修改了一行代码,这行代码似乎可以正常工作,它将if-else简化为变量“value”的检查,以查看它是否是复选框

($(this).attr('type','checkbox') ? value = $(this).val() : value = $(this).is(':checked'));

我希望这能有所帮助。

工作小提琴

val函数的工作方式与复选框的工作方式不同,从复选框中获取true或false的方法是使用is(“:checked”)函数

$(this).is(':checked')
fiddle是代码的一个修改版本,它修改了一行代码,这行代码似乎可以正常工作,它将if-else简化为变量“value”的检查,以查看它是否是复选框

($(this).attr('type','checkbox') ? value = $(this).val() : value = $(this).is(':checked'));

我希望这能有所帮助。

工作小提琴

val函数的工作方式与复选框的工作方式不同,从复选框中获取true或false的方法是使用is(“:checked”)函数

$(this).is(':checked')
fiddle是代码的一个修改版本,它修改了一行代码,这行代码似乎可以正常工作,它将if-else简化为变量“value”的检查,以查看它是否是复选框

($(this).attr('type','checkbox') ? value = $(this).val() : value = $(this).is(':checked'));
我希望这有帮助