在MVC中如何愉快使用Ajax
前言:
这个故事要从我老大与客户谈需求开始说起。前几天,遇见一个逗比客户,不知道是听了哪个逗比程序员的临终遗言...让我们给他做一个手机端的Web应用出来,还说要使用MVC来做(不是App)。马币,客户振振有词地说道:用MVC做的东西,高端大气上档次....@#¥!!@.....说得我老大热血澎湃...“大哥,您不做销售,真的是浪费了您的口才啊!”我在旁边如是说道...好吧,老大也被说动了,还说把这个模块交给我处置...当时我一万只草泥马奔腾啊,,MVC??还好自己整过几次,小学了一把...老大偷偷告诉我说:“客户有个女儿很漂亮哦”,纳尼,顿时激情高涨.
好吧,我思绪飘飞了,说说遇见的第一个问题就是,我要使用Ajax来完成很多功能啊,马币,怎么做。于是在奶妈(度娘)那里寻找答案,度娘告诉我,MVC里面可以使用Ajax。高兴了...切入主题,上代码:
我先创建了一个MVC3.0的应用程序,Vs2010用着比较习惯。
这是一个页面,无污染的,纯天然的
<!DOCTYPE html>
<html>
<head>
<script src="../../Scripts/jquery-1.4.4.js" type="text/javascript"></script>
<script type="text/javascript">
$(function () {
$("#okJson").click(function () {
$.ajax({
url: "/Home/Index",
type: "POST",
dataType: "Json",
success: function (data) {
alert(data)
}
})
})
})
</script>
</head>
<body>
<div>
<input type="button" id="okJson" value="弹弹弹" />
</div>
</body>
</html>
这是后台的处理代码
[HttpPost]
public ActionResult Index(string aa)
{
string msg = "成功吧,有妹纸!";
Response.ContentType = "text/plain";
this.Response.Write(msg);
return View();
}
一切OK,拍拍手,运行一下呢
纳尼,怎么回事?我不是要这种效果啊!我的第一次啊,,妹纸没了....作为21世纪好男人,怎么能被这点挫折打倒呢,于是,我又打开度娘,这次有了,说是Response大哥最近肾虚,在MVC中不好用。。MVC中集成了一个小逗比:Json....果断草泥马奔腾.....好吧,我胡三汉又回来了
后台代码换成这样
[HttpPost]
public ActionResult Index(string aa)
{
string msg = "成功吧,有妹纸!";
Dictionary<string, string> dict = new Dictionary<string, string>();
dict.Add("msg", msg);
return Json(dict);
//Response.ContentType = "text/plain";
//this.Response.Write(msg);
//return View();你们过时了
}
运行一下,看效果
成功!春天在哪里呀,春天在哪里。。思绪带着我飘飞到了很远很远的地方....
感悟:每次遇见问题,都要想办法去解决,如果行动了,还愁没有收获吗?解决编程方面的问题用这种思维,那么,生活方面呢?
在MVC中如何愉快使用Ajax的更多相关文章
- ASP.NET MVC中使用ASP.NET AJAX异步访问WebService
使用过ASP.NET AJAX的朋友都知道,怎么通过ASP.NET AJAX在客户端访问WebService,其实在ASP.NET MVC中使用ASP.NET AJAX异步访问WebService 也 ...
- mvc中使用knockoutjs和ajax
虽然说knockoutjs 官网上写的非常的清楚!但是像我这样的英语呕吐患者,真是虐心啊!今天我写下做个记录,也为那些初次使用的同学给予帮助, 首先我说一下今天我说的内容只是应用不做原理探究,如果没有 ...
- MVC中处理表单提交的方式(Ajax+Jquery)
MVC中处理表单有很多种方法,这里说到第一种方式:Ajax+Jquery 先看下表单: <form class="row form-body form-horizontal m-t&q ...
- CS0234: 命名空间“System.Web.Mvc”中不存在类型或命名空间名称“Html、Ajax”(是否缺少程序集引用?)
从SVN上down下来的程序,编译报了一大堆的错,发现是缺少引用,但是明明引用了,后来打开引用,发现system.web.mvc这个引用打着叹号,如图: 后来重新引用了本机的system.web.mv ...
- Asp.net MVC 中Ajax的使用 [分享]
文章转自 http://www.huiyoumi.wang/upload/forum.php?mod=viewthread&tid=75&extra= Asp.net MVC 抛弃了A ...
- Asp.net mvc中的Ajax处理
在Asp.net MVC中的使用Ajax, 可以使用通用的Jquery提供的ajax方法,也可以使用MVC中的AjaxHelper. 这篇文章不对具体如何使用做详细说明,只对于在使用Ajax中的一些需 ...
- MVC中前台如何向后台传递数据------$.get(),$post(),$ajax(),$.getJSON()总结
一.引言 MVC中view向controller传递数据的时候真心是一个挺让人头疼的一件事情.因为原理不是很懂只看一写Dome,按葫芦画瓢只能理解三分吧. 二.解读Jquery个Ajax函数 $.ge ...
- 在MVC中要实现Ajax
在MVC中要实现Ajax有很多的方式,有微软自己的MicrosoftAjax,也可以用JQuery的AJax来实现,如果对其他的JavaScript框架熟悉,还可以采用其他的实现方案,比如说Proto ...
- MVC中的Ajax(AjaxHelper)
authour: chenboyi updatetime: 2015-04-30 20:47:49 friendly link: 目录 1,思维导图 2,ActionLink() 3,BeginF ...
随机推荐
- osg三维重建的两种方法剖析:三角面片(osgUtil::DelaunayTriangulator)和四角面片(osg::HeightField) (2)
// perform very basic sanity-check validation on a heightfield.bool validateHeightField(osg::HeightF ...
- 高级应用与部署 —— 主程序与web目录分离
在网站部署中,考虑网站的安全行问题,可以将您的网站主程序与web目录分离,使主程序在web目录之外,从而提高网站的安全性. 分离方法 1.将phpcms v9中程序主框架目录phpcms移动至web目 ...
- swf上传
swfupload多文件异步上传 多文件选择异步上传的原理 传统上:多个文件逐一选.PHP开始处理,循环上 PHP+Flash上:JS调用flash控,Flash批量选取并保持选取所有文件列 swfu ...
- OpenStack点滴02-WSGI
OpenStack对外提供REST API,那么REST API是如何建立起来的呢? OpenStack用了一种叫WSGI(Web Service Gateway Interface)的东西,WSGI ...
- linux常用命令(5)rmdir命令
rmdir是常用的命令,该命令的功能是删除空目录,一个目录被删除之前必须是空的.(注意,rm - r dir命令可代替rmdir,但是有很大危险性.)删除某目录时也必须具有对父目录的写权限.1.命令格 ...
- PHP中的常量
常量与变量不一样,一旦被定义就可以全局访问. 例如: <?php define('CONST_NAME','shiyingyan'); define('RESULT_OK',1); define ...
- op编译信赖的库
Table of known prerequisites and their corresponding packages Here's a table with the package name f ...
- 设计模式 ( 十七 ):Observer 观察者模式 -- 行为型
1.概述 一些面向对象的编程方式,提供了一种构建对象间复杂网络互连的能力.当对象们连接在一起时,它们就可以相互提供服务和信息. 通常来说,当某个对象的状态发生改变时,你仍然需要对象之间能互相通信.但是 ...
- 30种IT技能让你年薪过10万美元!
科技行业的高薪岗位向来不少,但在不断变化的职场中,热门技能却随时在变:今天的热门技术,明天可能就会过时.美国求职网站 Dice.com 最近发布了 2015 年薪酬报告,通过对 23,470 位 IT ...
- Ubuntu中apt-get出现E:Encountered a section with no Package: header……的解决方案
方法一:运行命令apt-get update更新list列表 方法二:将/var/lib/apt/lists/下的所有list文件都删除,然后再update