加入收藏 | 设为首页 | 会员中心 | 我要投稿 广州站长网 (http://www.020zz.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

ASP.NET MVC5网站开发之添加删除重置密码修改密码列表浏

发布时间:2016-11-24 02:35:37 所属栏目:MsSql教程 来源:站长网
导读:一、安装插件。 展示层前端框架以Bootstrap为主,因为Bootstrap的js功能较弱,这里添加一些插件作补充。其实很多js插件可以通过NuGet安装,只是NuGet安装时添加的内容较多,不如自己复制来的干净,所以这里所有的插件都是下载然后复制到项目中。 1、Bootst

打开AdminController 添加DeleteJson(List<int> ids)方法 

// <summary>
 /// 删除 
 /// Response.Code:1-成功,2-部分删除,0-失败
 /// Response.Data:删除的数量
 /// </summary>
 /// <returns></returns>
 [HttpPost]
 public JsonResult DeleteJson(List<int> ids)
 {
 int _total = ids.Count();
 Response _res = new Core.Types.Response();
 int _currentAdminID = int.Parse(Session["AdminID"].ToString());
 if (ids.Contains(_currentAdminID))
 {
 ids.Remove(_currentAdminID);
 }
 _res = adminManager.Delete(ids);
 if(_res.Code==1&& _res.Data < _total)
 {
 _res.Code = 2;
 _res.Message = "共提交删除"+_total+"名管理员,实际删除"+_res.Data+"名管理员。n原因:不能删除当前登录的账号";
 }
 else if(_res.Code ==2)
 {
 _res.Message = "共提交删除" + _total + "名管理员,实际删除" + _res.Data + "名管理员。";
 }
 return Json(_res);
 }

在Index视图 script脚本区域,“//添加按钮结束”后面添加删除js代码 

//添加按钮结束

 //删除按钮
 $("#btn_del").click(function () {
 var selected = $table.bootstrapTable('getSelections');
 if ($(selected).length > 0) {
 BootstrapDialog.confirm("确定删除选中的" + $(selected).length + "位管理员", function (result) {
 if (result) {
 var ids = new Array($(selected).length);
 $.each(selected, function (index, value) {
 ids[index] = value.AdministratorID;
 });
 $.post("@Url.Action("DeleteJson","Admin")", { ids: ids }, function (data) {
 if (data.Code != 0) {
  BootstrapDialog.show({
  message: data.Message,
  buttons: [{
  icon: "glyphicon glyphicon-ok",
  label: "确定",
  action: function (dialogItself) {
  $table.bootstrapTable("refresh");
  dialogItself.close();
  }
  }]

  });
 }
 else BootstrapDialog.alert(data.Message);

 }, "json");
 }
 });
 }
 else BootstrapDialog.warning("请选择要删除的行");
 });
 //删除按钮结束

4、重置密码
 在AdminController中 添加ResetPassword(int id)方法。方法中将密码重置为Ninesky。 

/// <summary>
 /// 重置密码【Ninesky】
 /// </summary>
 /// <param name="id">管理员ID</param>
 /// <returns></returns>
 [HttpPost]
 public JsonResult ResetPassword(int id)
 {
 string _password = "Ninesky";
 Response _resp = adminManager.ChangePassword(id, Security.SHA256(_password));
 if (_resp.Code == 1) _resp.Message = "密码重置为:" + _password;
 return Json(_resp);
 }

在添加script代码中表格代码段可以看到,这里通过 连接的onclick调用ResetPassword方法,所以ResetPassword方法要放在表格生成前面,不然会出现 方法未定义的错误。 

ASP.NET MVC5网站开发之添加删除重置密码修改密码列表浏

这里把代码放到$(document).ready的前面。 

<script type="text/javascript"> //重置密码
 function ResetPassword(id, accounts) {
 BootstrapDialog.confirm("确定重置" + accounts + "的密码", function (result) {
 if (result) {
 $.post("@Url.Action("ResetPassword", "Admin")", { id: id }, function (data) {
 BootstrapDialog.alert(data.Message);
 }, "json");
 }
 });
 };
 //重置密码结束

 $(document).ready(function () {

 //表格

5、修改管理员密码 
在在AdminController中 添加MyInfo()方法。 

/// <summary>
 /// 我的资料
 /// </summary>
 /// <returns></returns>
 public ActionResult MyInfo()
 {
 return View(adminManager.Find(Session["Accounts"].ToString()));
 }

右键添加视图 

ASP.NET MVC5网站开发之添加删除重置密码修改密码列表浏

@model Ninesky.Core.Administrator

@{
 ViewBag.Title = "我的资料";
}

@section SideNav{@Html.Partial("SideNavPartialView")}

<ol class="breadcrumb">
 <li><span class="glyphicon glyphicon-home"></span> @Html.ActionLink("首页", "Index", "Home")</li>
 <li>@Html.ActionLink("管理员", "Index", "Admin")</li>
 <li class="active">我的资料</li>
</ol>
@Html.Raw(ViewBag.Message)
@using (Html.BeginForm())
{
 @Html.AntiForgeryToken()
 
 <div class="form-horizontal">
 @Html.ValidationSummary(true, "", new { @class = "text-danger" })

 <div class="form-group">
 @Html.LabelFor(model => model.Accounts, htmlAttributes: new { @class = "control-label col-md-2" })
 <div class="col-md-10">
 @Html.DisplayTextFor(model => model.Accounts)

 </div>
 </div>

 <div class="form-group">
 @Html.LabelFor(model => model.Password, htmlAttributes: new { @class = "control-label col-md-2" })
 <div class="col-md-10">
 @Html.EditorFor(model => model.Password, new { htmlAttributes = new { @class = "form-control" } })
 @Html.ValidationMessageFor(model => model.Password, "", new { @class = "text-danger" })
 </div>
 </div>

 <div class="form-group">
 @Html.LabelFor(model => model.LoginIP, htmlAttributes: new { @class = "control-label col-md-2" })
 <div class="col-md-10">
 @Html.DisplayTextFor(model => model.LoginIP)
 
 </div>
 </div>

 <div class="form-group">
 @Html.LabelFor(model => model.LoginTime, htmlAttributes: new { @class = "control-label col-md-2" })
 <div class="col-md-10">
 @Html.DisplayTextFor(model => model.LoginTime)
 </div>
 </div>

 <div class="form-group">
 @Html.LabelFor(model => model.CreateTime, htmlAttributes: new { @class = "control-label col-md-2" })
 <div class="col-md-10">
 @Html.DisplayTextFor(model => model.CreateTime)
 </div>
 </div>

 <div class="form-group">
 <div class="col-md-offset-2 col-md-10">
 <input type="submit" value="保存" class="btn btn-default" />
 </div>
 </div>
 </div>
}

@section Scripts {
 @Scripts.Render("~/bundles/jqueryval")
}

(编辑:广州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读