2011-12-15 71 views
5

我有一个.csHtml页面。该页面通过使用Jquery $ .get调用控制器中的方法来填充。控制器中的方法进行数据库调用并返回一个局部视图。局部视图呈现在DIV标记内。

数据正在实时显示。现在,当我按Ctrl + F5时,页面刷新,但它仍然显示相同的数据。我在控制器方法中放置了一个断点,并意识到控制器中的方法未被调用。

当我点击F5并在Visual Studio中运行时,该方法第一次被调用。我刷新数据的第二次没有刷新。

如果我必须看到数据库中显示的任何更改,我需要重新启动Visual Studio。

任何线索可能会发生什么?以下是代码片段。

// Our onReady actions; 
$(document).ready(function() { 
    $('#RateTab').click(function() { 
     getRates(); 
    }); 
}); 

function getRates() { 
    var URL = "home/Rates"; 

    $.get(URL, function (data) { 
     $('#loading').hide(); 
     $("#rates").html(data); 

     //Initialize(); 
    }); 
} 

任何有关可能发生什么的想法和建议?

+1

我们可以看到Ajax调用正在调用的控制器代码吗? – 2011-12-15 21:40:06

+0

@elkdanger:我在控制器方法的开头放置了断点,并且看到它没有碰到这个方法。但是,可变数据会使用旧数据填充。 – DotNetUser 2011-12-15 21:42:41

回答

4

我认为这是一个启用的缓存。您可以使用$.ajax方法来控制缓存。尝试重写它:

$.ajax({ 
    url : URL, 
    type : 'GET', 
    cache : false, 
    success : function (data) { 
      $('#loading').hide(); 
      $("#rates").html(data);} 
}); 

希望它有帮助。

相关问题