在执行另一个功能之前如何检查功能

时间:2019-04-18 07:27:40

标签: javascript jquery

问题是我有这样的功能:

function toggleLayers(layers,id)
    {
        var i, l = layers.length;
        if ($('#'+id).is(':checked')) {
            for(i = 0; i < l; i++){
                layers[i].setMap(map);
            }
        }
        else
        {
            for(i = 0; i < l; i++){
                layers[i].setMap(null);
            }
        }
    }

使用此功能,我检查它是否为选中复选框。问题出在另一个功能上:

function refreshpage(){
        var sdat = document.getElementById('refreshi').value ;      
        var enddate13 = sdat.replace('.','');       
        var enddate1 = enddate13.replace('.','');       
        var enddate2 = enddate1.replace(':','');        
        var enddate3 = enddate2.replace(':','');        
    //    var endate = "*";     
        var date = enddate1.slice(0, 8);        
    var time = enddate3.slice(9, 15);       

        var endateD = date.slice(0, 2);     

        var endateM = date.slice(2, 4);     
        var endateY = date.slice(4, 8);     

    var endateFinal = endateY + endateM + endateD ;


}

此功能刷新站点,如果选中该复选框,则该复选框不会被选中。即使选中该复选框,即使站点刷新,我该怎么办?

1 个答案:

答案 0 :(得分:2)

刷新网页后,您在其中的任何状态(如复选框之类的表单数据)都会被删除。您有几种选择:

  1. 使用local storage。将数据保存在本地存储中,并在加载页面时从本地存储中读取并设置复选框。
  2. 使用您的服务器。将表单数据(选中了复选框等)发送到服务器,并在页面加载后使服务器将数据发送到页面。这不是最佳解决方案,因为您将页面状态保存在服务器中。
  3. 使用网址。您可以使用查询字符串将表单的状态保存在url中。看here。这意味着每个复选框切换都会更改网址,而无需重新加载。