mvc ajax 页面不刷新页面,如何在不刷新页面MVC C#的情况下显示不同的值

本文介绍了一种利用AJAX和setTimeout技术在不刷新页面的情况下动态加载数据的方法。通过在控制器中定义一个返回不同值的动作,并结合ViewBag传递总数,配合JavaScript在前端定时获取并更新视图内容,实现列表项的逐个展示。这种方法适用于需要实时更新且数据量较大的场景。
摘要由CSDN通过智能技术生成

这是另一种方法:

>使用AJAX和setTimeout

>在控制器中声明一个动作(这个动作将返回不同的值)

> ViewBag中的一个整数,有些像:ViewBag.totalItems

在控制器中声明一个动作:这很重要,因为这将是您与数据库或数据的连接.此操作将接收itemIndex并将返回该项.像这样的东西:

[HttpPost]

public JsonResult GetItem(int index) {

return Json(myList.ElementAt(index));

}

ViewBag.TotalItems:您的视图必须知道列表中有多少项.我建议您通过ViewBag将该值作为整数传递:

public ActionResult Index() {

ViewBag.TotalItems = myList.Count();

return View();

}

AJAX和setTimeout:一旦掌握了所有这些,您就可以在不刷新的情况下更新视图了:

$(function() {

var totalItems = @Html.Raw(Json.Encode(ViewBag.TotalItems));

var currentItemIndex = 0;

var getData = function() {

$.post("@Url.Action("GetItem")",{index:currentItemIndex},function(data) {

// data is myList.ElementAt(index)

// do something with it

}).always(function() {

currentItemIndex++;

if(currentItemIndex < totalItems) {

setTimeout(getData,1000); // get the next item every 1 sec

}

})

}

getData(); // start updating

})

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值