Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在mvc中刷新视图_Javascript_C#_Jquery_Asp.net_Asp.net Mvc - Fatal编程技术网

Javascript 在mvc中刷新视图

Javascript 在mvc中刷新视图,javascript,c#,jquery,asp.net,asp.net-mvc,Javascript,C#,Jquery,Asp.net,Asp.net Mvc,有人能告诉我为什么这些代码图片不是每1秒刷新一次视图吗 <div id="AutoRefresh"> <table class="table"> <tr> <th> @Html.DisplayNameFor(model => model.Employees.Name) </th> <th> @Html.Displa

有人能告诉我为什么这些代码图片不是每1秒刷新一次视图吗

 <div id="AutoRefresh">
<table class="table">
    <tr>
        <th>
            @Html.DisplayNameFor(model => model.Employees.Name)
        </th>
        <th>
            @Html.DisplayNameFor(model => model.RequestTypes.RequestTypeName)
        </th>
        <th>
            @Html.DisplayNameFor(model => model.Comments)
        </th>
        <th>
            @Html.DisplayNameFor(model => model.Inserted_Date)
        </th>

        <th>Action</th>
    </tr>

    @foreach (var item in Model)
    {
        <tr>
            <td>
                @Html.DisplayFor(modelItem => item.Employees.Name)
            </td>
            <td>
                @Html.DisplayFor(modelItem => item.RequestTypes.RequestTypeName)
            </td>
            <td>
                @Html.DisplayFor(modelItem => item.Comments)
            </td>
            <td>
                @Html.DisplayFor(modelItem => item.Inserted_Date)
            </td>

            <td>
                @Html.ActionLink("Edit", "Edit", new { id = item.Id }) |
                @Html.ActionLink("Details", "Details", new { id = item.Id }) |
                @Html.ActionLink("Delete", "Delete", new { id = item.Id })
            </td>
        </tr>
    }

</table>
}

控制器动作方法:

 // GET: RequestApprovals
    public async Task<ActionResult> Index()
    {
        var requestApprovals = db.RequestApprovals.Include(r => r.Employees).Include(r => r.RequestTypes);
        return View(await requestApprovals.ToListAsync());
    }

我的共享文件夹中有一个_Layout.cshtml文件,如果我在布局页面中使用meta标记,它将刷新所有使用该_Layout.cshtml的视图,但我只希望一个包含上述代码的视图应该刷新。我试过上面的代码,但它不适合我。请建议我该怎么做

您可以使用Ajax调用刷新页面数据:

<script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script>
<script id="sessionJs" type="text/javascript">

   function GetData()
       {
              $.ajax(
              {
                   type: "POST",
                   url: "RequestApprovals/Index",
                   data: "{'value':'" + value + "'}",
                   contentType: "application/json; charset=utf-8", 
                   dataType: "json",
                   failure: function (msg) { alert(msg); },
                   success: function (msg) { alert(msg.d);  } 
                    }
                );
            }
       }
    setTimeout(GetData, 1000);
</script>

我不确定,但这不是个好主意,你能给你看看控制器吗/请求批准/Index@bto.rdz我已经用我的控制器操作方法更新了我的问题。请你检查一下,并给我建议最好的方法。你真的希望数据每秒钟都改变吗?@StephenMuecke先生,我需要每秒钟都改变数据。什么不起作用?控制器没有被点击吗?我不想刷新整个页面,只有内容应该被刷新。@Vikrant,你怎么看。加载是什么?这是一个ajax调用@MANISH请更正您的问题,有人能告诉我为什么这张代码图片不是每1秒刷新一次视图来刷新Div@StephenMuecke是的你是对的,很抱歉
<script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script>
<script id="sessionJs" type="text/javascript">

   function GetData()
       {
              $.ajax(
              {
                   type: "POST",
                   url: "RequestApprovals/Index",
                   data: "{'value':'" + value + "'}",
                   contentType: "application/json; charset=utf-8", 
                   dataType: "json",
                   failure: function (msg) { alert(msg); },
                   success: function (msg) { alert(msg.d);  } 
                    }
                );
            }
       }
    setTimeout(GetData, 1000);
</script>
initialize: function() {
    this.timer = setInterval(function() {
    this.collection.fetch();
   }, 1000);
},
close: function() {
    clearInterval(this.timer);
}