Jquery实现循环删除Reaper某一行

一、实现的效果图:(点击删除图标,juery实现删除整行)

二、MVC开发模式

SQLServer层

#region 删除
/// <summary>
/// 根据自动编号删除快递线路信息 (假删)
/// </summary> /// <param name="Id">自动编号</param> /// <returns></returns> public int DelExpressLine(int Id) { string sql = string.Format("update ExpressLine set Status=3 where Id={0}", Id); return DBUtility.SqlHelper.ExecuteNonQuery(ConnString.conn, CommandType.Text, sql, null); } #endregion

Models层——>DAL层

#region 删除快递线路
/// <summary>
/// 根据自动编号删除快递线路
/// </summary>
/// <param name="Id">自动编号</param>
/// <returns></returns>
public static int DelExpressLine(int Id)
{
    return new SQLServerDAL.ExpressLine().DelExpressLine(Id);
 }
#endregion

Controllers层

using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;
using System.Web.Mvc;
namespace Wutong.WebSite.Controllers
{
    public class MemberController : BaseController
    { 
        /// <summary>
        /// 删除快递线路信息
        /// </summary>
        /// <param name="id">自动编号</param>
        /// <returns></returns>
        public JsonResult DelExpressLine(int id)
        {
            if (Models.DAL.ExpressLine.DelExpressLine(id) > 0)
            {
                return Json(new { code = 1, msg = "删除成功" });
            }
            else
            {
                return Json(new { code = 0, msg = "删除失败" });
            }
        }
 }

View层

@model IEnumerable<Wutong.Model.ExpressLine>
@{
    ViewBag.Title = "会员中心-快递线路管理";
}
<table width="720" class="tb2" cellpadding="0" cellspacing="0">
   <tr>
     <td class="dh strong" width="40"><input type="checkbox"></td>
     <td class="dh strong" width="150">出发地->到达地</td>                 
     <td class="dh strong" width="100"> 发布/刷新时间</td>
     <td class="dh strong" width="50">线路状态</td>
     <td class="dh strong" width="50">管理线路</td>
     <td class="dh strong" width="30">查看</td>  
     <td class="dh strong" width="30">修改</td>   
     <td class="dh strong" width="30">删除</td>                  
   </tr>
   @foreach (var item in Model)
     {  
       <tr data="@item.Id" data1="@item.IsSpecial">
         <td width="40"><input type="checkbox"></td>
         <td style="line-height: 15px;">@item.StartArea -> @item.ArriveArea</td>
         <td style="line-height: 15px;">@item.AddDate</td>
         <td style="line-height: 15px;">@((item.IsSpecial) == true ? "专线" : "非专线")</td>  
         <td><input type="button" value='@((item.IsSpecial) == true ?"关闭专线" : "开通专线")' class="btnUpdateSpecial"></td>    
         <td><a href="/ExpressLineInfo/@item.Id"><img src="/images/find.png" width="19" height="19"></a></td>
         <td><a href="/Member/PublishExpressLine/?type=get&id=@item.Id"><img src="/images/xg.png" width="16" height="16"></a></td>   
         <td><a href="javascript:void" class="del" ><img src="/images/del.png" width="19" height="19" title="删除"></a></td>             
       </tr>                
     }
</table>
@section Js{
<script type="text/javascript">
    $(function () {
          $(".del").click(function () {
            if (confirm("确实要删除此记录?")) {
         //获取表中tr
var $this = $(this).parent().parent();          //获取表中tr中data的值
var _id = $this.attr("data"); $.post("/Member/DelExpressLine/", { id: _id }, function (json) { if (json.code == 1) { //删除成功,移除这一行 $this.remove(); return true; } else { //删除失败 alert(json.msg); return false; } }); } }); }); </script> }


备注:1、Jquery循环访问Repeater中控件不能直接使用控件id访问字段,否则只能对repeater第一行有效,可以使用控件CSS类名访问,即(.del)。

posted @ 2014-07-14 10:35  橙子819  阅读(530)  评论(0编辑  收藏  举报