【问题标题】:Is it possible to update a part of page every second with Razor.Html.Partial?是否可以使用 Razor.Html.Partial 每秒更新部分页面?
【发布时间】:2015-03-04 13:32:33
【问题描述】:

我正在使用带有剃须刀引擎的Nancy,我想执行一个每秒更新部分页面的函数。我已经做的是我创建了一个简单的局部视图,名为_partial.cshtml

代码:

<p>@System.DateTime.Now</p>

在我的主视图中,我设置了一个间隔来每秒记录该部分视图的值

代码:

setInterval(function() {
    console.log(@Html.Partial("../_partial.cshtml", null));
}, 1000);

但是,这每次都会呈现相同的值,因为它在客户端(在本例中为 chrome)被解释为静态 valye 而不再是动态的......那么我该如何解决呢?

【问题讨论】:

    标签: c# razor nancy


    【解决方案1】:

    您需要编写一个从服务器返回部分视图的操作。在 Javascript 代码中,您必须编写一个 AJAX GET / POST 请求,该请求应放置在 setInterval() 块中。如果它是普通的 Asp.net MVC,我会这样做。对于南希来说,应该没有太大的不同。

    // Controller Action Method, assuming name of controller as DataController
    public ActionResult RealTimeData()
    {
      return PartialView("_partial");
    }
    
    // Javascript Code
    setInterval(function(){
      $.get('@Url.Action("RealTimeData", "Data")', null, function(data, status, xhr){
         // Update the UI.
      }).fail(function(x, status, err){
         // Handle errors
      });
    },1000);
    

    希望这会有所帮助。

    【讨论】:

    • 我无法将模型传递给 nancy
    • 可以分享更新后的javascript代码和服务器端Nancy代码吗?
    猜你喜欢
    • 1970-01-01
    • 2013-07-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-12
    • 2017-04-03
    • 1970-01-01
    相关资源
    最近更新 更多