目前,我正在使用jQuery检查选择框的值,并且值是truefalse,但是当我去选择jquery中的值时,它会将其识别为字符串。

然后,我必须将其更改为布尔值才能在setOptions中工作,我想知道是否有可能不必经过下面的过程即可转换为布尔值?

html

<select name="scalecontrol" id="scalecontrol">
    <option value="false">None</option>
    <option value="true" selected="selected">Standard</option>
</select>


jQuery的

$('#scalecontrol').change(function(){
    ao.scalecontrol = $(this).val();
    if (ao.scalecontrol == 'false'){
        ao.scalecontrol = false;
    } else {
        ao.scalecontrol = true;
    }
    map.setOptions({
        scaleControl:ao.scalecontrol
    });
});

最佳答案

如果使用.val()生成字符串类型,则必须使用该字符串类型,但是可以将代码缩短为以下内容:

$('#scalecontrol').change(function(){
    ao.scalecontrol = $(this).val() == 'true';
    map.setOptions({
        scaleControl:ao.scalecontrol
    });
});

09-25 17:28