Ajax.BeginForm VS Html.BeginForm
来源:互联网 发布:mac打碟软件vitualdj 编辑:程序博客网 时间:2024/05/15 14:43
有的人说,AJAX一听,高大上,HTML一听,死老土,所以AJAX更好。其实这是错误的。每种方法有它不同的用途。现在做如下总结:
@using (Ajax.BeginForm("Login", "Account", new AjaxOptions{//InsertionMode=InsertionMode.Replace,HttpMethod = "POST",//OnFailure="searchFailed",//LoadingElementId="ajax-loader",UpdateTargetId = "LogonContainer",OnSuccess = "123 "})){<h2 class="form-signin-heading">欢迎登陆</h2>@Html.TextBoxFor(m => m.UserName, new { @class = "form-control", @placeholder = "Email Address", @required = "true", @autofocus = "true" })@Html.PasswordFor(m => m.Password, new { @class = "form-control", @placeholder = "PassWord", @required = "true" })@Html.LabelFor(m => m.Password, new { @id = "ajax-loader", @style = "display:none" })<label class="checkbox"><input type="checkbox" value="记住我" />阅读用户协议</label><button class="btn btn-lg btn-primary btn-block" id="submitBtn" type="submit">登陆</button>}
上面用的是AJAX.BeginForm 中如果更新了(不管成功或失败,反正都会返回东西吧?)
UpdateTargetId 这个东西就是你要刷新的DIV,你的返回的结果都往这里面丢。
而且最重要的一点区别是Ajax.BeginForm不会改变浏览器地址栏的地址,尽管你刷新了,不然怎么叫AJAX呢?
好了,下面的html.beginform就好理解了,如果你提交了,返回什么就是什么,而且如果你跳到另一个页面的话,页面地址栏会发生变化。
而Ajax.BeginForm呢?只会往UpdateTargetId里面填充你返回的结果,但是其他地方不刷新!
@using (Html.BeginForm("Login", "Account", FormMethod.Post, new { @role = "form", @class = "form-signin" })) {<h2 class="form-signin-heading">欢迎登陆</h2>@Html.TextBoxFor(m => m.UserName, new { @class = "form-control", @placeholder="Email Address", @required="true" ,@autofocus="true"})@*<input type="text" class="form-control" placeholder="Email Address" required autofocus />*@@Html.PasswordFor(m => m.Password, new {@class="form-control", @placeholder="PassWord",@required="true" })<label class="checkbox"><input type="checkbox" value="记住我" />阅读用户协议 </label> <button class="btn btn-lg btn-primary btn-block" id="submitBtn">登陆</button>
所以简单点说,就是你需要做无刷新的时候要用AJAX更好,而有刷新的话,肯定选传统的html.beginform方式!好了,总结到这里了,以前一直不太懂这2者的区别,今天总算是弄懂了。特此总结。
0 0
- Ajax.BeginForm VS Html.BeginForm
- Html.BeginForm() vs Ajax.BeginForm() in MVC3
- Html.BeginForm与Ajax.BeginForm
- Html.BeginForm与Ajax.BeginForm
- Html.BeginForm与Ajax.BeginForm
- Html.BeginForm与Ajax.BeginForm
- MVC3系列~Html.BeginForm与Ajax.BeginForm
- MVC3系列~Html.BeginForm与Ajax.BeginForm
- MVC3系列~Html.BeginForm与Ajax.BeginForm
- MVC3中Html.BeginForm与Ajax.BeginForm
- MVC3系列~Html.BeginForm与Ajax.BeginForm
- Ajax.BeginForm
- Html.BeginForm()
- 爱上MVC3系列~Html.BeginForm与Ajax.BeginForm
- Html.BeginForm 与 Ajax.BeginForm 使用Html.ValidationMessage显示错误的注意事项
- Ajax.BeginForm MVC3 使用
- Ajax.BeginForm 的用法
- Ajax.BeginForm 的用法
- OpenCV学习笔记(十六)角点检测
- TWIG 模板设计 快速入门手册 中文
- Maven服务器搭建经验总结
- BZOJ 1087 状压DP
- AC自动机 模板 【HDU2222】 Keywords Search
- Ajax.BeginForm VS Html.BeginForm
- Android常用开发学习网站总结
- 分享一个简单新闻客户端源码
- 在MVC里面使用Response.Redirect方法后记得返回EmptyResult
- BZOJ 2049 LCT
- 面试准备
- Unity开发-你必须知道的优化建议
- extjs treepanel 动态的加载节点,选中父节点时,同时选中下面的子节点
- Mysql Explain 详解