ASP.NET MVC用Ajax无刷新调用后台Editexques metion方法,为什么点击确定修改后Editexques metion方法被调用了两次

ASP.NET MVC+Unobtrusive Ajax+jQuery实现无刷新分页
ASP.NET MVC+Unobtrusive Ajax+jQuery实现无刷新分页
一、准备工作
阅读本文前,请您自备瓜子、准备鼠标,学习或复习以下知识:
1、Unobtrusive Ajax(jquery.unobtrusive)
2、ASP.NET MVC基础知识
二、借鉴项目
jPaginate 的样式完全符合我的需要,但是它的使用原理是帮您生成分页代码,您只需自定义分页回调函数,这在使用JSON作为返回数据的项目中当然很好用,可惜俺现在执迷的是Unobtrusive Ajax,也就是无需额外代码,通过读取链接元素的属性自动生成异步调用,因此jPaginate在此可谓心有余而力不足啦。
先说说我的实现方法:在服务器端生成分页数据,在客户端通过JS对数据进行美化排版,仅此而已。先看看效果吧:
三、服务器端工作
需要的类:
1 public class PagingInfo 2
public int TotalItems { get; set; } 4
public int ItemsPerPage { get; set; } 5
public int CurrentPage { get; set; } 6
public int TotalPages 8
get { return (int)Math.Ceiling((decimal)TotalItems / ItemsPerPage); }10
1 public ViewResult List(int page=1) 2
var users = _repository.Users 4
.OrderByDescending(x =& x.UserID) 5
.Skip((page - 1) * PageSize) 6
.Take(PageSize); 7
Session["PagingInfo"] = new PagingInfo() 8
TotalItems = _repository.Users.Count(),10
CurrentPage = page,11
ItemsPerPage = PageSize12
return View(users);14
简要说明:这里直接截取了一个小项目中的代码,分页信息通过Session传递到View,你当然可以改成强类型。这个Action只需加载一次,只有当你的数据发生变化(增加、删除)才需重新加载。
@if (Session["PagingInfo"] != null){
&div class="pager"&
@Html.AjaxPageLinks((PagingInfo)Session["PagingInfo"], x =& Url.Action("List", new { page = x }),3, "user-list")
AjaxPageLinks:
辅助生成Unobtrusive Ajax格式的分页链接。
1 public static class PagingHelpers 2
/// &summary& 4
/// 生成Unobtrusive Ajax action link分页 5
/// &/summary& 6
/// &param name="html"&&
摘要: 作者:Tony Qu
NPOI官方网站:/
很多表格中都要使用边框,本节将为你重点讲解NPOI中边框的设置和使用。
边框和其他单元格设置一样也是在HSSFCellSty
The evening reception was at the Experience Music Project/SciFi Museum Hall of Fame. Gary and I walked through the SciFi Museum. It was really great, lots of memorabilia from all
摘要: 大家在项目中我想都有这样的体会,一个存储过程有大量的参数,在写函数的时候就要写大量重复的代码,还要在在SQL 和VS 之间来回的切换查看参数,数据表同样也是,所以写了两个模板来加快开
[原文发表地址]: Entity Framework in .NET 4
[原文发表时间]:Monday, January 11,
Entity Framework
)第一版本的发布以来,我们陆续从用户那里得到了许多高质量的
If you are in the technology field, or within the listening range of modern media, youve heard of the Apple iPad. The fact that it runs an updated version of the Apple iPhone OS i
摘要: WITH MEMBER mydate as now()
SELECT {[Measures].[到达用户数]} on COLUMNS,
{StrToMember([日期天].[日期天].[月].[ + Format(dateadd(m,-5,cdate(mydate)), yyyymm) + ]):strtomem
随着版本的不断演化,客户端与服务端的数据契约可能会出现版本不一致的情况。在WCF中,关于数据契约的版本控制有两种情况:新增成员与缺失成员。新增成员是指发送方包含了新增成员,默认处理方式
Last week I blogged about the new
ASP.NET MVC 3 Tools Update , and then followed it up with a detailed post that covered using the
EF Code First and the new Data Scaffolding fea
连连看作为一个经典的游戏受到很多上班族的喜爱
我老婆就很喜欢玩这个游戏,好,给她做一个
做起来也不难,只要知道实现的原理,不管用什么语言都很容易实现
C# Version3.0Specification
September 2005
翻译: 邱龙斌 &qiu_lb (at) &
... 阅读全文
Powered by
[ RssXN(build:
070517 Asp.net 2.0)]
每隔1小时自动更新一次ASP.NET MVC4中使用AJAX_MVC_柯乐义
您的位置:
ASP.NET MVC4中使用AJAX
本实例展示在ASP.NET MVC4中如何使用AJAX。功能是实现留言的提交,后台程序对留言进行处理,然后将处理结果在前台显示。运行结果:主要代码:Views中的Create.cshtml建立留言表单: @using (Html.BeginForm(&Create&, &Message&, FormMethod.Post, new { @class = &keleyi& }))
&tr&&td&标题:&/td&&td&@Html.TextBox(&kTitle&)&/td&&/tr&
&tr&&td&Email:&/td&&td&@Html.TextBox(&kEmail&)例如:&/td&&/tr&
&tr&&td&QQ:&/td&&td&@Html.TextBox(&kQQ&)&/td&&/tr&
&tr&&td&内容:&/td&&td&@Html.TextArea(&kcontent&, new { rows = 10, cols = 50 })&/td&&/tr&
&tr&&td&&/td&&td&&button type=&submit& id=&tijiao&&提交留言&/button&&span id=&indicator& style=&display:none&&&img src=&/content/load.gif& alt=&loading...& /&&/span&&/td&&/tr&
}&div id=&lastmessage&&&/div&下面就是使用jquery的ajax功能,实现留言的提交、处理和显示:&script type=&text/javascript& src=&/keleyi/pmedia/jquery-1.9.1.min.js&&&/script&$(document).ready(function () {
$(&form.keleyi&).submit(function (event) {
event.preventDefault();
keleyiAjax(this, update_sessions, &html&);
});function keleyiAjax(form, callback, format) {
$(&#indicator&).show();
url: form.action,
type: form.method,
dataType: format,
data: $(form).serialize(),
completed: $(&#indicator&).hide(),
success: callback
function update_sessions(result) {
$(&form.keleyi&)[0].reset();
$(&#lastmessage&).html(result);
}对提交到后台的留言进行处理:MessageControler.cs[HttpPost]
public string Create(FormCollection collection)
return AddMessage(collection["ktitle"], collection["kcontent"], collection["kemail"], collection["kqq"]);
private string AddMessage(string ktitle, string kcontent, string kemail, string kqq)
string k_message = "标题:" + ktitle + " Email:" + kemail + " QQ:" + kqq + " 内容:" +
}源代码可到下载更多内容:
Copyright&之前一直用window.onload方法来调用js方法来实现,今天纠结能不能换个方法实现。
很明显是可以的。
在html前台页面引用js代码如下
& & @Scripts.Render(&~/Scripts/User/AddUser.js&)
这就算引用了,看adduser.js代码如果调用后台方法
& & & $(document).ready( function (){&
& & & & &$.ajax({
& & & & type: 'POST',
& & & & url: &/EditUserPassWord/UserGroupQuery&,
& & & & success: function (obj) {
& & & & & &if ( &obj.Success) {
//............
& & & & & &}
& & & & & &}
& & & & & &});
& & & & & &})
这样就可以调用UserGroupQuery的方法。在js中是不可以用window.onload 只可以用&$(document).ready
方法很简单。值得学习了。
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:186036次
积分:3139
积分:3139
排名:第4624名
原创:124篇
转载:17篇
评论:98条
这个栏目主要讲解个人对数据优化的一点遇见,希望和大家一起分享和探讨。。
阅读:7183
阅读:19830
(1)(1)(6)(2)(1)(5)(1)(1)(1)(3)(10)(13)(1)(14)(1)(2)(1)(20)(23)(2)(3)(3)(2)(5)(18)(1)ASP.NET 怎么使用AJAX或 JSON 调用后台方法_百度知道
ASP.NET 怎么使用AJAX或 JSON 调用后台方法
action=Upload&url=&value&quot,之前写JAVA的;); 请问怎么写下面这句方法现在因为要转ASP;想问下怎么调用后台方法var bt =上传& +上传成功&button&quot.setAttribute(&quot.id = &quot./type&;; + k?调用后台的一个方法
bt.createElement(&quot.aspx&Scanner&#47.setAttribute(&quot.onclick = function () {
&#47, function (da) {
alert(&bt&quot.;, &), &Sinput&/
}););).NET 对这个语言有点陌生
提问者采纳
Scanner/action&Upload&Scanner/){ Upload();]==&quot.aspx在这里的pageload中写获取actionif(Request[&}望采纳
这个是不是每次都要提交?可以做到AJAX那样 不提交么?
$.post这个就是ajax的使用的其中一种方式吧,你基础太差了吧。。。
。。。。不好意思, 完全没用功ASP.NET
以前用JAVA的,以为调用pageload 它就会提交 刷新一下现在剩下最后一个问题了,参数怎么解决?public void
upload(string url){}用刚才的方法if(Request[&action&]==&Upload&){ Upload();}怎么把获取参数?
提问者评价
我知道怎么解决了,谢谢你了
其他类似问题
json的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 exques me 的文章

 

随机推荐