Jquery Ajax方法传值到action的方法


Posted in Javascript onMay 11, 2014

假设cshtml文件中是这样的:

<script type="text/javascript">
        $(document).ready(function(){
            $("#btn").click(function(){
             $.ajax({
                type: 'POST',
                url: "/Home/MyAjax",
                data: {
                    val1: $("#txt1").val(),
                    val2: $("#txt2").val(),
                    val3: $("#txt3").val(),
                    val4: $("#txt4").val(),
                },
                dataType: "json"
            });
            });
        });  
</script>
<input id="btn" type="button" value="click" />
<input id="txt1" type="text" value="" />
<input id="txt2" type="text" value="" />
<input id="txt3" type="text" value="" />
<input id="txt4" type="text" value="" />

data是json数据。传递到的Action是/Home/MyAjax。那么在Action方法处接收的方式如下:

public ActionResult MyAjax(string val1)        {
            string val2 = Request["val2"].ToString();
            string val3 = Request.Form["val3"].ToString();
            string val4 = Request.Params["val4"].ToString();
            return Content("ViewUserControl1");
        }

 或者接收参数为FormCollection,也有同样的效果。

 public ActionResult MyAjax(FormCollection f)        {
            string val2 = f["val2"].ToString();
            string val3 = f["val3"].ToString();
            string val4 = f["val4"].ToString();
            return Content("ViewUserControl1");
        }

 MVC3的强悍之处,是它是基于变量参数命名匹配的机制,就是说它尽可能的查找能够有相同变量名字的值。对于上面的例子,我们甚至可以构造出一个class,如下:public class aclass {

    public string val1 { set; get; }
    public string val2 { set; get; }
    public string val3 { set; get; }
    public string val4 { set; get; }
}

那么就可以设置参数类型为aclass

    public ActionResult MyAjax(aclass f)        {
          return Content(f.val1+f.val2+f.val3+f.val4);
        }

注意,aclass类的属性名就是json的key的名字,只要符合一致,它就能匹配,不得不说强悍。

Javascript 相关文章推荐
使用Java实现简单的server/client回显功能的方法介绍
May 03 Javascript
JavaScript字符串对象split方法入门实例(用于把字符串分割成数组)
Oct 16 Javascript
sails框架的学习指南
Dec 22 Javascript
jQuery老黄历完整实现方法
Jan 16 Javascript
详解用node搭建简单的静态资源管理器
Aug 09 Javascript
JavaScript 数组的进化与性能分析
Sep 18 Javascript
dts文件中删除一个node或属性的操作方法
Aug 05 Javascript
JS控制GIF图片的停止与显示
Oct 24 Javascript
微信小程序在text文本实现多种字体样式
Nov 08 Javascript
解决VUE自定义拖拽指令时 onmouseup 与 click事件冲突问题
Jul 24 Javascript
用webAPI实现图片放大镜效果
Nov 23 Javascript
jQuery实现简单弹幕制作
Dec 10 jQuery
json的定义、标准格式及json字符串检验
May 11 #Javascript
Jquery操作js数组及对象示例代码
May 11 #Javascript
Jquery+asp.net后台数据传到前台js进行解析的方法
May 11 #Javascript
如何防止回车(enter)键提交表单
May 11 #Javascript
js取整数、取余数的方法
May 11 #Javascript
浏览器窗口大小变化时使用resize事件对框架不起作用的解决方法
May 11 #Javascript
基于jquery实现的图片在各种分辨率下未知的容器内上下左右居中
May 11 #Javascript
You might like
PHP 地址栏信息的获取代码
2009/01/07 PHP
PHP中的表达式简述
2016/05/29 PHP
prototype.js的Ajax对象
2006/09/23 Javascript
js验证表单第二部分
2006/11/25 Javascript
正则表达式判断是否存在中文和全角字符和判断包含中文字符串长度
2008/09/27 Javascript
更优雅的事件触发兼容
2011/10/24 Javascript
多个datatable共存造成多个表格的checkbox都被选中
2013/07/11 Javascript
JavaScript面向对象编程入门教程
2014/04/16 Javascript
基于BootStrap Metronic开发框架经验小结【八】框架功能总体界面介绍
2016/05/12 Javascript
总结AngularJS开发者最常犯的十个错误
2016/08/31 Javascript
jQuery实现页面滚动时智能浮动定位
2017/01/08 Javascript
Bootstrap与Angularjs的模态框实例代码
2017/08/03 Javascript
使用JS和canvas实现gif动图的停止和播放代码
2017/09/01 Javascript
vue富文本编辑器组件vue-quill-edit使用教程
2018/09/21 Javascript
ES6基础之默认参数值
2019/02/21 Javascript
[00:56]2014DOTA2国际邀请赛 DK、iG 赛前探访
2014/07/10 DOTA
Windows下用py2exe将Python程序打包成exe程序的教程
2015/04/08 Python
Python中的ctime()方法使用教程
2015/05/22 Python
python进程管理工具supervisor的安装与使用教程
2017/09/05 Python
Python实现读取及写入csv文件的方法示例
2018/01/12 Python
Python 类的特殊成员解析
2018/06/20 Python
解决PyCharm的Python.exe已经停止工作的问题
2018/11/29 Python
如何在Django中设置定时任务的方法示例
2019/01/18 Python
tensorflow 实现打印pb模型的所有节点
2020/01/23 Python
在Python3.74+PyCharm2020.1 x64中安装使用Kivy的详细教程
2020/08/07 Python
Perfume’s Club法国站:购买香水和化妆品
2019/05/02 全球购物
土耳其风格手工珠宝:Ottoman Hands
2019/07/26 全球购物
欧洲最大的高尔夫零售商:American Golf
2019/09/02 全球购物
欧洲最古老的鞋厂:Peter Kaiser
2019/11/05 全球购物
网络专业学生个人的自我评价
2013/12/16 职场文书
自我介绍演讲稿
2014/01/15 职场文书
党员创先争优活动总结
2014/05/04 职场文书
2019年共青团工作条例最新版
2019/11/12 职场文书
聊聊Lombok中的@Builder注解使用教程
2021/11/17 Java/Android
python机器学习实现oneR算法(以鸢尾data为例)
2022/03/03 Python
Win11如何默认打开软件界面最大化?Win11默认打开软件界面最大化的方法
2022/07/15 数码科技