ASP.NET?MVC使用jQuery?ui的progressbar實(shí)現(xiàn)進(jìn)度條
在電商網(wǎng)站中,有時(shí)候通過(guò)進(jìn)度條來(lái)直觀地顯示用戶是否到期以及用戶當(dāng)前的狀態(tài)。

設(shè)計(jì)這樣的一個(gè)Model。
public class User
{
public int Id { get; set; }
public string Name { get; set; }
public int CoopTime { get; set; }
public DateTime JoinTime { get; set; }
}以上,合作時(shí)長(zhǎng)屬性CoopTime,和加入時(shí)間屬性JoinTime是和進(jìn)度密切相關(guān)的2個(gè)屬性。
在HomeController中,一個(gè)action方法用來(lái)顯示界面,一個(gè)用來(lái)接收來(lái)自視圖的GET請(qǐng)求,返回json數(shù)據(jù)。
public ActionResult Index()
{
return View();
}
public ActionResult GetStatus()
{
User user = new User()
{
Id = 1,
Name = "某某用戶",
CoopTime = 1,
JoinTime = new DateTime(2014, 3, 20)
};
//判斷合作是否已經(jīng)到期
int result = DateTime.Compare(DateTime.Now, user.JoinTime.AddYears(user.CoopTime));
if (result <= 0) //當(dāng)前時(shí)間比合作到期時(shí)間早,合作未到期
{
//計(jì)算時(shí)間
var pastDays = (DateTime.Now.Subtract(user.JoinTime)).TotalDays;
var oneYearDays = (user.JoinTime.AddYears(user.CoopTime).Subtract(user.JoinTime)).TotalDays;
var pastPercentage = (pastDays / oneYearDays) * 100;
var dataSuccess = new { msg = true, p = pastPercentage };
return Json(dataSuccess, JsonRequestBehavior.AllowGet);
}
else //當(dāng)前時(shí)間比合作到期時(shí)間晚,合作已到期
{
var dataFail = new { msg = false, p = 100 };
return Json(dataFail, JsonRequestBehavior.AllowGet);
}
}
}以上,
- 使用DateTime的靜態(tài)方法Compare來(lái)比較2個(gè)時(shí)間,一個(gè)是當(dāng)前時(shí)間,另一個(gè)是加入時(shí)間 + 合作時(shí)長(zhǎng),如果結(jié)果小于或等于0,就表示沒(méi)有過(guò)期。
- 使用DateTime的靜態(tài)方法Subtract來(lái)給2個(gè)時(shí)間做減法。
Home/Index.cshtml中,當(dāng)頁(yè)面加載完畢后,向服務(wù)端發(fā)出一個(gè)異步GET請(qǐng)求,把返回的數(shù)據(jù)顯示到progressbar中。
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
<link href="~/Content/themes/base/jquery-ui.css" rel="external nofollow" rel="stylesheet" />
<script src="~/Scripts/jquery-1.8.2.min.js"></script>
<script src="~/Scripts/jquery-ui-1.8.24.min.js"></script>
<script type="text/javascript">
$(function () {
$.getJSON('@Url.Action("GetStatus","Home")', function(data) {
if (data.msg == true) {
var temp = parseInt(data.p);
$('#p').progressbar({
value: temp
});
} else {
$('#message').text('已到期');
$('#p').progressbar({
value: parseInt(data.p)
});
}
});
});
</script>
</head>
<body>
<div id="p">
</div>
<div>
<span id="message"></span>
</div>
</body>以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接
- Asp.net基于ajax和jquery-ui實(shí)現(xiàn)進(jìn)度條
- ASP.NET實(shí)現(xiàn)進(jìn)度條效果
- asp.net mvc 實(shí)現(xiàn)文件上傳帶進(jìn)度條的思路與方法
- asp.net文件上傳帶進(jìn)度條實(shí)現(xiàn)案例(多種風(fēng)格)
- asp.net單文件帶進(jìn)度條上傳的解決方案
- Asp.Net 無(wú)刷新文件上傳并顯示進(jìn)度條的實(shí)現(xiàn)方法及思路
- asp.net 生成靜態(tài)頁(yè)時(shí)的進(jìn)度條顯示
- 利用Asp.Net回調(diào)機(jī)制實(shí)現(xiàn)進(jìn)度條
- ASP.NET技巧:教你制做Web實(shí)時(shí)進(jìn)度條
相關(guān)文章
ASP.NET對(duì)無(wú)序列表批量操作的三種方法小結(jié)
在網(wǎng)頁(yè)開(kāi)發(fā)中,經(jīng)常要用到無(wú)序列表。事實(shí)上在符合W3C標(biāo)準(zhǔn)的div+css布局中,無(wú)序列表被大量使用,ASP.NET雖然內(nèi)置了BulletedList控件,用于創(chuàng)建和操作無(wú)序列表,但感覺(jué)不太好用2012-01-01
ASP.NET Core 數(shù)據(jù)保護(hù)(Data Protection)上篇
這篇文章主要為大家詳細(xì)介紹了ASP.NET Core 數(shù)據(jù)保護(hù)(Data Protection),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-09-09
使用DataTable更新數(shù)據(jù)庫(kù)(增,刪,改)
使用DataTable更新數(shù)據(jù)庫(kù)(增,刪,改),需要的朋友可以參考一下2013-03-03
MVC4制作網(wǎng)站教程第三章 瀏覽用戶組操作3.1
這篇文章主要為大家詳細(xì)介紹了MVC4制作網(wǎng)站教程,瀏覽用戶組功能的實(shí)現(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-08-08
asp.net4.0框架下驗(yàn)證機(jī)制失效的原因及處理辦法
asp.net4.0框架下驗(yàn)證機(jī)制失效的原因及處理辦法,需要的朋友可以參考一下2013-06-06
ASP.NET?Core通過(guò)Microsoft.AspNetCore.App元包簡(jiǎn)化程序集引用
這篇文章介紹了ASP.NET?Core通過(guò)Microsoft.AspNetCore.App元包簡(jiǎn)化程序集引用的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-07-07
ASP.NET設(shè)計(jì)網(wǎng)絡(luò)硬盤之兩重要類代碼
要進(jìn)行“網(wǎng)絡(luò)硬盤”功能設(shè)計(jì),首先要熟悉.NET中處理文件和文件夾的操作。File類和Directory類是其中最主要的兩個(gè)類。了解它們將對(duì)后面功能的實(shí)現(xiàn)提供很大的便利2012-10-10
Entity Framework Core實(shí)現(xiàn)軟刪除與查詢過(guò)濾器
這篇文章介紹了Entity Framework Core實(shí)現(xiàn)軟刪除與查詢過(guò)濾器的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-02-02

