Ajax.ActionLink参数详解
该语法会生成一个a标签,点击a标签会执行一个Ajax请求。
有12个方法重载,下面详解方法中的各项参数:
参数一:linkText
string类型
说明:链接显示的文字内容
参数二:actionName
string类型
说明:指定请求地址的Action名称
参数三:ajaxOptions
class类型
说明:配置Ajax的一些选项
举例:new AjaxOptions { HttpMethod = "POST", LoadingElementId = "searching", UpdateTargetId = "postContent" }
相关属性详解:
|
Confirm |
string |
在请求之前会弹出一个提示框,是否确认提交 |
|
HttpMethod |
string |
设置请求类型 Get Post |
|
UpdateTargetId |
String |
标明html中一元素的id,把请求返回的数据/元素更新到该元素中 |
|
InsertionMode |
enum |
把请求结果以何种方式更新到Dom元素中 ①Replace ②InsertBefore ③InsertAfter 不设置的情况下,默认是Replace,只有在UpdateTargetId被设置后才有效 |
|
LoadingElementId |
string |
标明html中一元素的id,在请求过程中,该元素会显示出来,请求结束后又隐藏 |
|
LoadingElementDuration |
Int |
控制Loading动画在显示/隐藏时的动画持续时间,单位为毫秒; 默认情况下,动画将淡入淡出;这个时间即淡入淡出的时间(但经测试无效!!!) |
|
OnBegin |
string |
标明js中一function的名称,在Ajax请求发送前,执行该方法,对应JQuery的beforeSend |
|
OnComplete |
String |
标明js中一function的名称,在请求成功时,执行该方法,对应JQuery的complete |
|
OnFailure |
String |
标明js中一function的名称,在请求失败时,执行该方法,对应JQuery的error |
|
OnSuccess |
String |
标明js中一function的名称,无论请求成功与否,都在请求完成时,执行该方法,对应JQuery的success |
|
Url |
String |
请求的地址 |
|
AllowCache |
Bool |
是否使用缓存 |
在BeginForm的11个重载方法中,有一方法中只有AjaxOptions一个参数,如果不指定Url,则生成的form表单的action属性没有值,就默认把数据提交到当前页,否则就以Url为请求地址,其他重载方法中都需要指定actionName及controllerName(可选)。
参数四:routeValues
object、RouteValueDictionary类型
说明:将传入到Controller中方法的参数
支持上述两种数据类型:
object类型可以在使用时直接以匿名类方式声明,使用非常方便
举例:
new { id = 1, type = 1 }
RouteValueDictionary类型实现了IDictionary<string, object>接口,因此在使用时可以用键值对方式声明
举例:
new RouteValueDictionary{ {"id", 1}, {"type", 1} }
生成的路径:/Home/Index/1?type=1
因为“id”是在路由规则中配置的名称,因此显示在路由规则对应的位置,“type”则在问号后面
参数五:htmlAttributes
object、IDictionary<string, object>类型
说明:html属性,生成form表单时,会把键值对添加到form表单的属性中;
支持上述两种数据类型:
object类型可以在使用时直接以匿名类方式声明,使用非常方便
举例:
new{id = "frm", @class = "cls" } 由于class是C#中的关键字,因此需要在前面加@符号
IDictionary<string, object>类型使用灵活,可以在一个地方声明,多个地方调用,或修改后使用
举例:
Dictionary<string, object> htmlAttr = new Dictionary<string, object>
{
{"id", "frm"},
{"class", "cls"}
};
生成的代码:<form action="/Home/Index/1?type=1" class="cls" data-ajax="true" id="frm" method="post">
参数六:controllerName
string类型
说明:指定请求地址的Controller名称
参数七:protocol
string类型
说明:指定链接的协议类型,比如http、https
参数八:hostName
string类型
说明:指定链接的主机地址,可以有域名+端口号,比如ayilaile.com:80
参数九:fragment
string类型
说明:指定链接中的锚点名称
七、八、九三个参数的重载方法很少使用
示例:
@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"})
生成的链接为:https://www.ayilaile.com:90/Home/Index/1?type=1#title
Ajax.ActionLink参数详解的更多相关文章
- $.ajax()所有参数详解
原文:https://www.cnblogs.com/everest33Tong/p/6159700.html [一]$.ajax()所有参数详解 url: 要求为String类型的参数,(默认为当前 ...
- ajax方法参数详解与$.each()和jquery里面each方法的区别
JQuery中$.ajax()方法参数详解 url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为g ...
- Ajax.BeginForm参数详解
在Asp.Net的MVC中的语法,在Razor页面中使用,替代JQuery的Ajax使用,方便快捷. 使用Ajax.BeginForm方法会生成一个form表单,最后以Ajax的方式提交表单数据:需要 ...
- JQuery中$.ajax()方法参数详解
url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 ...
- JQuery中$.ajax()方法参数详解 及 async属性说明
url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 ...
- JQuery中$.ajax()方法参数详解(转载)
url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 ...
- $.ajax()方法参数详解
url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 ...
- 转:JQuery中$.ajax()方法参数详解
url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 ...
- (转)JQuery中$.ajax()方法参数详解
url: 要求为String类型的参数,(默认为当前页地址)发送请求的地址. type: 要求为String类型的参数,请求方式(post或get)默认为get.注意其他http请求方法,例如put和 ...
随机推荐
- iOS 实现类似雷达效果的核心代码
-(void)drawRect:(CGRect)rect { [[UIColor clearColor]setFill]; UIRectFill(rect); NSInteger pulsingCou ...
- 实现tap的多种方式
一.tap.js 这是一个比较轻量的插件tap.js,142行代码,支持模块化开发. 1)handleEvent addEventListener方法中的第二个参数,我原先并没有注意到其实可以传一个对 ...
- JS打印对象的方法&将Object转换为String的函数
1.有时候需要把对象中的字段属性打印出来,下面用JS实现输出对象: function writeObj(obj) { var description = ""; for (var ...
- hexo在git上搭建个人博客
公司实习第一天接到的任务是:搭建一个基于Nodejs的开源项目的开发环境,接到任务时以为不是很困难,后来才知道该项目已于去年被废弃,搭配环境的时候遇到了不少问题,折腾了两天还是没有最终完成... 不过 ...
- Django admin 权威指南(一)
版本: Django 1.10 此部分由官方文档<6.5.1 The Django admin site>翻译而来. 6.5.1.1 概览 默认情况下,使用startproject的时候, ...
- Z.ExtensionMethods 一个强大的开源扩展库
今天有意的在博客园里面搜索了一下 Z.ExtensionMethods 这个扩展类库,确发现只搜到跟这个真正相关的才两篇博文而已,我都点进去看了一下,也都只是提到而已,没有专门介绍,才引起我写这篇文档 ...
- 【开源】SoDiaoEditor 可能是目前最好用的开源电子病历编辑器(B/S架构)
此刻我的内心是忐忑的,这个标题给了我很大的压力,虽然很久以前我就在github上搜索一圈了,也没发现有其他更好的开源电子病历编辑器,如各位亲发现有更好的,烦请知会我一声. 该编辑器其实已经憋了很久了, ...
- sqlserver2008存储过程(比较两个日期大小和获取当前月最大天数的存储过程)
下面简单介绍sqlserver2008两个常用的存储过程 1.比较两个日期大小的存储过程 2.获取当前月份的最大天数的存储过程 1.创建比较两个日期大小的存储过程 1)创建比较两个日期大小的存储过程 ...
- 深入理解Redis系列
Redis基础教程详情参考:http://www.yiibai.com/redis/redis_quick_guide.html 基础知识: 0.Redis特点:Redis是Remote Dictio ...
- 深入研究Java类装载机制
目录 1.为什么要研究java类装在机制? 2.了解类装载机制,对于我们在项目开发中有什么作用? 3.装载实现细节. 4.总结 一.为什么药研究Java类装载机制 java类加载机制,便于我们使用自定 ...