2016-08-01 2 views
5

У меня есть простой ViewComponent корректно работает в браузере Chrome и Firefox, но не работают в браузере край \ IE 11.Rendering ViewComponent с AJAX не работает в Крае/IE11

Компонент показывает время (например, пример).

Отображается время Chrome и firefox.

Edge Browser \ IE 11, время отображается только при первой странице и остается таким, время «заморожено».

но

Когда я открываю средства разработки браузера пограничными, а также в IE 11, компонент начинает работать правильно и отображается текущее время (как и другие браузеры)

И когда я закрыть инструменты разработки F12, компонент перестает работать (время «заморожено»).

И это повторяется - F12 открытым компонент работы, F12 Закрыть компонент перестает работать.

Я что-то пропустил?

Установка простого кода процесса Спасибо вам


HomeController:

public IActionResult GetTime() 
{ 
    return ViewComponent("GetTime"); 
    //// var time = DateTime.Now.ToString("h:mm:ss"); 
    //// return Content($"The current time is {time}"); 
} 

GetTimeViewComponent:

public class GetTimeViewComponent : ViewComponent 
{ 

    public IViewComponentResult Invoke() 
    { 

    var model = new string[] 
    { 
    "Hello", DateTime.Now.ToString("h:mm:ss") , "the", "view", "component." 
    }; 
    return View("Default", model); 

    } 

} 

По умолчанию:

@model string[] 
<ul> 
    @foreach (var item in Model) 
    { 
     <li class="text-danger">@item</li> 
     } 
</ul> 

**Index** 

<div id="myComponentContainer">@await Component.InvokeAsync("GetTime") </div> 

**Js/Ajax** 

$(function() { 

    var refreshComponent = function() { 
    $.get("Home/GetTime", function (data) { 
    $("#myComponentContainer").html(data); 
    }); 
}; 
    $(function() { window.setInterval(refreshComponent, 1000); }); 

}); 

ответ

1

Попытка установить кэш false в ajaxSetup

$.ajaxSetup({ cache: false }); 

Или используйте

$.ajax({ cache: false, //other options... }); 
Смежные вопросы