asp.net MVC3 + JQuery 的ajax简单使用
一直都没有使用过JQuery,更没使用过JQuery的ajax支持带来的方便,今天试了一下,真是减少了很多工作量,使用方法也比较简单
这里先记下来,以后使用时可以再拿着用。
本应用中,本来是准备使用长链接的方式,在server端有错误消息产生时,能实时返回错误消息。可在使用长链接时,因为.net功底
不够,以失败告终!所以采用了javascript中间隔查询的方法。
页面代码如下:
- @{
- ViewBag.Title = "ErrorMonitor";
- }
- <script src="@Url.Content("~/Scripts/jquery-1.4.4.min.js")" type="text/javascript"></script>
- <script type="text/javascript" language="javascript">
- $(function () {
- setInterval(ajaxRequest, 1000);
- });
- function ajaxRequest() {
- $.ajax(
- {
- url: '/TopDemo/Home/ErrorRefresh', // 指定调用的URL,对应于Controller
- data: '{}', // 如果请求有参数,需要在这里指定
- type: "POST", // 请求类型
- contentType: "application/json;charset=utf-8",
- dataType: "json",
- success: function (data) { // 请求成功后的回调
- if (data == null || data.length == 0) {
- return false;
- } else {
- writeMsg(data);
- }
- },
- error: function (data) { // 请求失败后的回调
- alert(data.statusText);
- }
- }
- );
- }
- function writeMsg(data) {
- var errorDiv = document.getElementById("errorDiv");
- for (var i = 0; i < data.length; i++) {
- var errorText = document.createTextNode(data[i].errMsg);
- var errorTextDiv = document.createElement("div");
- errorTextDiv.appendChild(errorText);
- if (errorDiv.hasChildNodes) {
- errorDiv.insertBefore(errorTextDiv, errorDiv.firstChild);
- } else {
- errorDiv.appendChild(errorTextDiv);
- }
- }
- }
- </script>
- <h2>
- 错误监控</h2>
- <div id="errorDiv">
- </div>
Controller的代码也很简单,就是简单的把错误消息列表以json格式返回给View,如下:
- [HttpPost]
- public JsonResult ErrorRefresh()
- {
- int errMsgSize = errMsgService.Size();
- List<object> errors = new List<object>();
- if (errMsgSize > 0)
- {
- for (var i = 0; i < errMsgSize; i++)
- {
- ErrorMessageModel errMsg = errMsgService.Remove();
- if (errMsg != null)
- {
- errors.Add(new
- {
- errMsg = "error: " + errMsg.ErrorType + "," + errMsg.ErrorKey + "," + errMsg.ErrorTime + "," + errMsg.ErrorMsg
- });
- }
- }
- }
- JsonResult result = this.Json(errors);
- return result;
- }
asp.net MVC3 + JQuery 的ajax简单使用的更多相关文章
- Asp.net中JQuery、ajax调用后台方法总结
通过上一篇文章实例的实现,整个过程当中学习到很多知识点,了解了Jquery.Ajax在asp.net中的运用,加以总结,其实原理都是一样的,理解了一种,其他的注意很少的区别就可以了.灵活运用: 1.有 ...
- 2、jQuery的Ajax简单示例
一.创建一个JavaWEBProject 二.创建一个Servlet(下面的例子中用到了Json--第32行,Json的作用是将一个Object类转换为特定格式的字符串,如果不用Json直接返回字符串 ...
- ASP.NET MVC3入门教程之ajax交互
本文转载自:http://www.youarebug.com/forum.php?mod=viewthread&tid=100&extra=page%3D1 随着web技术的不断发展与 ...
- 【转】asp.net mvc3 简单缓存实现sql依赖
asp.net mvc3 简单缓存实现sql依赖 议题 随 着网站的发展,大量用户访问流行内容和动态内容,这两个方面的因素会增加平均的载入时间,给Web服务器和数据库服务器造成大量的请求压力.而大 ...
- 利用JQuery的$.ajax()可以很方便的调用asp.net的后台方法
利用JQuery的$.ajax()可以很方便的调用asp.net的后台方法. 先来个简单的实例热热身吧. 1.无参数的方法调用 asp.net code: view plaincopy to clip ...
- JQuery和Ajax在ASP.NET MVC中的基本应用
当我们在开发Web应用程序中使用JQuery和Ajax异步调用来实现很多功能时,不仅提高了程序的性能,而且给用户一个更好的交互式界面操作体验.接下来我们依旧用简单的实例来学习下它们的应用. 创建一个A ...
- 如何构建ASP.NET MVC4&JQuery&AJax&JSon示例
背景: 博客中将构建一个小示例,用于演示在ASP.NET MVC4项目中,如何使用JQuery Ajax. 步骤: 1,添加控制器(HomeController)和动作方法(Index),并为Inde ...
- ASP.NET 跨域请求之jQuery的ajax jsonp的使用解惑 (转载)
前天在项目中写的一个ajax jsonp的使用,出现了问题:可以成功获得请求结果,但没有执行success方法,直接执行了error方法提示错误——ajax jsonp之前并没有用过,对其的理解为跟普 ...
- jQuery Uploadify在ASP.NET MVC3中的使用
1.Uploadify简介 Uploadify是基于jQuery的一种上传插件,支持多文件.带进度条显示上传,在项目开发中常被使用. Uploadify官方网址:http://www.uploadif ...
随机推荐
- Java4Android
变量 在计算机中存储信息需要声明变量的位置和所需的内存空间 boolean true false char ASCII字符集 计算机中所有数据都使用二进制表示 例如:a,b,c 适用七位二进制数进行表 ...
- STM32F0xx_TIM输入捕获(计算频率)配置详细过程
前言 关于STM32的定时器,可谓是功能强大,估计没有多少人研究完STM32定时器的所有功能(包括我也没有),只是使用常用的一些功能,后续我会推出关于STM32定时器的更多功能. STM32芯片多数为 ...
- hdu 1885 Key Task
题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=1885 Key Task Description The Czech Technical Univers ...
- ios中怎么样自动剪切图片周围超出的部分
UIImageView *image = [[UIImageView alloc] init]; image.clipsToBounds = YES;
- 调试mvc 源码【转:http://www.cnblogs.com/wucj/archive/2013/06/09/3128698.html】
最近在研究asp.net mvc的源码,于是在想,既然提供了源码,那我们如何进入源码调试了?在网上找了一些调试的方法,试了几个都不行,于是折腾了一上午,终于弄出来了,下面看看我的操作步骤. 一:准 ...
- Linux开机启动程序详解
Linux开机启动程序详解我们假设大家已经熟悉其它操作系统的引导过程,了解硬件的自检引导步骤,就只从Linux操作系统的引导加载程序(对个人电脑而言通常是LILO)开始,介绍Linux开机引导的步骤. ...
- Python实现ID3(信息增益)
Python实现ID3(信息增益) 运行环境 Pyhton3 treePlotter模块(画图所需,不画图可不必) matplotlib(如果使用上面的模块必须) 计算过程 st=>start: ...
- JS全局屏蔽回车事件
window.onload = function (){ document.body.onkeydown=function(event){ if(event.keyCode==13){ event.k ...
- 新安装Ubuntu加载时提示“为/检查磁盘时发生严重错误”的解决方法
本文部分内容转载自: http://jingyan.baidu.com/article/0aa22375bbffbe88cc0d6419.html http://www.aichengxu.com/v ...
- C++类中的this指针的作用
1.我们知道C++的类成员函数中,默认都隐含了一个this指针,标识调用该成员函数的对象 2.为什么需要有一个this指针呢?C++设计这个机制的初衷是什么呢? 我们知道,普通的C++类,其成员函数是 ...