zoukankan      html  css  js  c++  java
  • MVC学习十二:Ajax.ActionLink用法

    Ajax.ActionLink用法

    <!--使用Ajax.BeginForm必须引用的js文件-->
    <script type="text/javascript" src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>

    1.加载部分视图

    视图代码

    @Ajax.ActionLink("链接文本", "Action方法名","控制器名", new AjaxOptions()
    {
    UpdateTargetId = "DivMsg", //数据显示容器ID
    InsertionMode = InsertionMode.Replace, //替换容器内容
    HttpMethod = "Post"
    })
    <div id="DivMsg">数据显示容器ID</div>

    Controller代码

    #region MVC 的 Ajax超链接请求的目标
    /// <summary>
    /// MVC 的 Ajax超链接请求的目标
    /// </summary>
    /// <returns></returns>
    public ActionResult Action方法名()
    {
        return PartialView();
    } 
    #endregion

    2.异步操作(如增、删、查、改)

    //                                                操作参数
    @Ajax.ActionLink("操作", "Action方法名", "控制器名", new { t=new Random().NextDouble() }, new AjaxOptions { HttpMethod = "Get", OnBegin = "OnBegin", OnSuccess="OnSuccess", OnComplete = "OnComplete" })

    脚本

    function OnBegin() {  
        //弹出遮罩层,防止用户在服务器响应期间的其他误点击  
    }  
    
    function OnSuccess(data) {  
        alert(data);//接收action传来的返回值  
    }  
    
    function OnComplete() {  
        //关闭遮罩层  
    }  

    AjaxOptions中还有其他可以指定的属性:

    Confirm 等效于javascript中的return confirm(msg),在点击该链接时先提示需要确认的信息。
    HttpMethod 指定使用Get或者是Post方式发送Http请求
    InsertMode 指定使用哪一种方式在指定的UpdateTargetId元素更新数据,可以有三种方式: "InsertAfter", "InsertBefore", or "Replace" 。默认为:Replace
    LoadingElementDuration Loading元素显示的时间
    LoadingElementId 可以指定在Http请求期间显示的Loading元素
    OnBegin 在Http请求之前执行的javascript方法
    OnComplete 在Http请求结束时执行的方法
    OnFailure 在Http请求失败时执行的方法
    OnSuccess 在Http请求成功时执行的方法
    UpdateTargetId Http请求更新的页面元素
    Url Http请求的Url

    示例:

    //                                                                                                                         锚点    参数--如果没有ID的话

    @Ajax.ActionLink("ActionLink", "Index", "Home", "https", "www.ayilaile.com:90", "title", new { id = 1, type = 1 }, new AjaxOptions { HttpMethod = "Post", UpdateTargetId = "detailsID", InsertionMode = InsertionMode.Replace }, new{ id = "testid"})

    生成的链接为:<a id="testid" herf="https://www.ayilaile.com:90/Home/Index/1?type=1#title">ActionLink</a>

    @Ajax.ActionLink("ActionLink", "Index", "Home", "https", "www.ayilaile.com:90", "title", new { type = 1 }, new AjaxOptions { HttpMethod = "Post", UpdateTargetId = "detailsID", InsertionMode = InsertionMode.Replace }, new{ id = "testid"})

    生成的链接为:<a id="testid" herf="https://www.ayilaile.com:90/Home/Index?type=1#title">ActionLink</a>

  • 相关阅读:
    selenium——上传文件
    selenium——下拉框
    selenium——鼠标操作ActionChains:点击、滑动、拖动
    selenium定位元素—逻辑运算、xpath函数、轴定位
    spring设置webAppRootKey
    树莓3 集群
    redis集群搭建
    MQ基础
    MQ集群测试环境搭建(多节点负载均衡,共享一个kahaDB文件(nas方式))
    weblogic对jms实现的QueueConnection实现与TopicConnection实现问题
  • 原文地址:https://www.cnblogs.com/WarBlog/p/7423712.html
Copyright © 2011-2022 走看看