Javascript 不每次刷新数据

Javascript 不每次刷新数据,javascript,php,jquery,ajax,checkbox,Javascript,Php,Jquery,Ajax,Checkbox,我在我的项目中遇到了一个问题。我有两个选项卡,其中一个选项卡有复选框和提交按钮,用户将从复选框中进行选择,单击按钮,他将从另一个选项卡的复选框中获得所选内容。它运行得非常好。但有时它不会刷新ajax中的数据,jquery和我必须完成刷新页面。我无法识别问题,因为我没有收到任何错误。至少我必须点击超过15次,然后它将不会刷新数据,否则它工作正常。 以下是我的js代码: function getFahrzeuge() { var opts = [];

我在我的项目中遇到了一个问题。我有两个选项卡,其中一个选项卡有复选框和提交按钮,用户将从复选框中进行选择,单击按钮,他将从另一个选项卡的复选框中获得所选内容。它运行得非常好。但有时它不会刷新ajax中的数据,jquery和我必须完成刷新页面。我无法识别问题,因为我没有收到任何错误。至少我必须点击超过15次,然后它将不会刷新数据,否则它工作正常。 以下是我的js代码:

function getFahrzeuge() { 
            var opts = [];
            $("#fahrzeuge input[type='checkbox']").each(function () {
                if ($(this).is(':checked')) 
                {
                opts.push($(this).attr("id"));
                }

            }); 
            return opts;
        } 

        function saveFahrzeugeWidget(opts){

        if(opts.length == 0) return false;

        $.ajax({
          type: "POST",
          url: "ajax/dashboard.php",
          dataType : 'json',
          cache: false,
            data: {'filterOpts' :opts, 'aktion' : 'save-widget-vehicle'},
          success: function(data){
           //getFahrzeugeWidget();
             $('#fahrzeuge').html(data['html']); 

          },
          error: function(data){
                    console.log(data);
              }
        });
      }


      function getFahrzeugeWidget(opts){
        if(!opts || !opts.length){
          opts = allFahrzeuge;
        }

        $.ajax({
          type: "POST",
          url: "ajax/dashboard.php",
          dataType : 'json',
          cache: false,
          data: {filterOpts:opts, 'aktion' : 'get-widget-vehicle'},
          success: function(data){
            $('#fahrzeuge').html(data.html);
          },
          error: function(data){
                    console.log(data);
              }
        });
      }    

      function getFahrzeugeWidgetEdit(opts){
        if(!opts || !opts.length){
          opts = allFahrzeuge;
        }

        $.ajax({
          type: "POST",
          url: "ajax/dashboard.php",
          dataType : 'json',
          cache: false,
          data: {filterOpts:opts, 'aktion' : 'get-widget-vehicle-edit'},
          success: function(data){

             $('#fahrzeuge').html(data.html);
          },
          error: function(data){
                    alert('error' + data);
              }
        });
      }    

      $('#fahrzeuge .butt-rahmen').live('click', function(){
            var opts = getFahrzeuge();
            if($(this).attr('id') == 'saveId')
            {
                    saveFahrzeugeWidget(opts);   
                    if($('#fahrzeuge input[type="checkbox"]:checked').length <=0) {
                                alert('überprüfen Sie bitte atleast ein fahrzeuge');
                                //getFahrzeugeWidgetEdit(opts);
                         }                            
          }

            });  

答案是缓存。你也得到了同样的答案。尝试将新参数作为时间戳添加到数据中

所以你的数据应该是这样的

data: {'filterOpts' :opts, 'aktion' : 'save-widget-vehicle', 'timestamp': new Date().getTime()},

将时间戳附加到AJAX Url,它应该可以正常工作。只需附加&_,事情就会如预期的那样工作。我在做这件事之前尝试过,但仍然有相同的问题……您使用的是哪种浏览器?您是否尝试过saveral浏览器,但仍然存在相同的缓存问题?我正在使用Firefox…我现在将检查其他浏览器…但我认为问题出在我的代码中的某个地方…在至少15次单击后,它无法刷新我的数据…:这在某个地方是个小问题…即使我之前认为我很抱歉我尝试了,但仍然得到了同样的结果…我不明白有时点击按钮它会运行良好,但有时它不会刷新数据,在firebug中,我可以看到它将传递正确的参数