• MVC3.0 采用Jquery实现局部刷新


    我的广告单元,有空点一下哦,谢谢!

    MVC3.0刚入门,所有的都在摸索中,官方的MUSIC也无心看,只能做一个功能海搜一下。最近做了一个局部刷新的功能,功能大致是根据页面左侧的内容,刷新右侧的Grid信息

    效果图片:

    单击左侧后:(单击时候右侧将会出现加载效果)

    这里是实现逻辑,代码

    1.首先主页面

    ////////////////////////////////////////////////////////////////////////////
    主页面内容
    @model System.Data.DataTable

    @{
    ViewBag.Title = "RFID无线订货系统";
    Layout = "~/Views/Shared/_Layout.cshtml";
    int i = 1;
    }
    @section head{
    <script type="text/javascript">
    function search(shangdate,series) {
    //这里是根据左侧单击的行,查找右侧的数据,并返回
    $.post("/Home/AllGroupSKC/", "fshangdate="+ shangdate +"&fseries="+ series, function (data) {
    $(
    "#AJAXMAIN").html(data);//这里是重点,右侧数据获取后要显示到div中
    }, "text"
    );
    returnfalse;
    }
    //准备
    $(function () {
    $(
    "tr").addClass("clicktr");//添加css,鼠标放到tr上为手型,css忽略
    $("tr").click(function () {
    $(
    "tr").removeClass("clickedtr");//去掉所有的clickedtr样式
    $(this).addClass("clickedtr"); //单击某tr后,将该行的颜色标记下
    //加载数据效果,其实就是显示一张图片
    $("#AJAXMAIN").html("<img src='/content/images/load.gif' /><br />数据刷新中,请等待...");
    //执行查询
    search($(this).children('td').eq(1).html(), $(this).children('td').eq(2).html());
    })
    })
    </script>
    }
    <h2>.........</h2>
    <br />
    ..........
    <hr />
    <div style="float:left;380px;margin:0 5px 0 0;">
    <table>
    <tr><th>NO</th><th>这里是列....忽略........</th></tr>
    @foreach (System.Data.DataRow dr in Model.Rows)
    {
    <tr><td>@(i++)</td><td>这里是列....忽略........</td></tr>
    }
    </table>
    </div>
    <!-- 右侧的grid -->
    <div id="AJAXMAIN" style="float:left;auto;">
    <font style="font-size:40px; color:#CCCCCC">请单击左侧行<br />查看相应信息</font>
    @{Html.Action("AllGroupSKC"); }//局部View
    </div>

      

    2.局部视图页面AllGroupSKC.cshtml

    ////////////////////////////////////////////////////////////////////////////////////////////////////////////
    PartialView AllGroupSKC.cshtml 内容如下

    @model System.Data.DataTable
    <table>
    <tr><th>.............</th></tr>
    @foreach (System.Data.DataRow dr in Model.Rows)
    {
    <tr><td>................</td></tr>
    }
    </table>

      

    3.最后是Controller的方法

    ///////////////////////////////////////////////////////////////////////////////////////////////////////////////
    Controller.cs 方法
    //左侧数据
    [OutputCache(Duration =300)]
    public ActionResult AllGroupShangDateSeries()
    {
    return View(DbHelperSQL.GetRecordByProc("P_AllGroupShangDateSeries"));
    }
    //右侧数据
    [OutputCache(Duration =300)]
    public PartialViewResult AllGroupSKC(string fshangdate ="",string fseries="")
    {
    if (Request.IsAjaxRequest())
    return PartialView(DbHelperSQL.LRGroupSDSeries("P_AllGroupSKC", fshangdate, fseries));
    else
    returnnull;
    }

      

  • 相关阅读:
    迷 宫
    车厢调度
    快速幂
    2804 最大最小数质因数
    3022 西天收费站
    2291 糖果堆
    1464 装箱问题 2
    Exists/In/Any/All/Contains操作符
    window.onscroll
    zIndex 属性设置元素的堆叠顺序。
  • 原文地址:https://www.cnblogs.com/qidian10/p/2118021.html
Copyright © 2020-2023  润新知