asp.net MVC 使用JQuery.Ajax

ASP.NET MVC 使用Jquery Ajax实现登录 视图[Views]  --   Login.cshtml 页面 Ajax Login @*生成防伪标记*@ @Html.AntiForgeryToken() 用户名: 阅读详情

使用到:Jquery.js 以及 Newtonsoft.Json.dll


  客户端调用方式:

$("#ButAjax").click(function() {
            $.ajax({
                type: "POST",  //默认是GET
                url: "/AjaxTest/getPerson",
                data: "ID=1&FirstName=C&LastName=HY",
                async: true,  //异步
                cache: false, //不加载缓存
                success: function(obj) {
                    alert(obj.ID + obj.FirstName + obj.LastName + obj.Man);
                },
                error: function() {
                    alert("请求失败");
                }
            });
        });

        $("#ButAjax2").click(function() {
            $.ajax({
                type: "POST",  //默认是GET
                url: "/AjaxTest/getPerson2?ID=3&FirstName=C&LastName=HY",
                async: true,  //异步
                cache: false, //不加载缓存
                success: function(obj) {
                    alert(obj.ID + obj.FirstName + obj.LastName + obj.Man);
                },
                error: function() {
                    alert("请求失败");
                }
            });
        });

        $("#ButAjax3").click(function() {
            $.ajax({
                type: "POST",  //默认是GET
                url: "/AjaxTest/getString",
                async: true,  //异步
                cache: false, //不加载缓存
                success: function(str) {
                    alert(str);
                },
                error: function() {
                    alert("请求失败");
                }
            });
        });

        $("#ButAjax4").click(function() {
            $.ajax({
                type: "POST",  //默认是GET
                url: "/AjaxTest/getJsonString",
                async: true,  //异步
                cache: false, //不加载缓存
                success: function(str) {
                    var obj = eval(str);
                    $.each(obj, function(item, value) {
                        alert(item + ":" + obj[item]);
                    });
                },
                error: function() {
                    alert("请求失败");
                }
            });
        });

        //================================================================

        $("#ButJson1").click(function() {
            $.getJSON("/AjaxTest/getJson1", { ID: "22", FirstName: "C1", LastName: "HY1" }, function(json) {
                alert(json);
                $.each(json, function(item, value) {
                    alert(item + ":" + json[item]);
                });
            });
        });

        $("#ButJson2").click(function() {
            $.getJSON("/AjaxTest/getJson2", { ID: "22", FirstName: "C1", LastName: "HY1" }, function(json) {
                alert(json);
                $.each(json, function(item, value) {
                    alert(item + ":" + json[item]);
                });
            });
        });

        $("#ButJson3").click(function() {
            $.getJSON("/AjaxTest/getJson3", { ID: "22", FirstName: "C1", LastName: "HY1" }, function(json) {
                alert(json);
                $.each(json, function(item, value) {
                    alert(item + ":" + json[item]);
                });
            });
        });

        $("#ButJson4").click(function() {
            $.getJSON("/AjaxTest/getJsonSerializingJson", { ID: "22", FirstName: "C1", LastName: "HY1" }, function(json) {
                alert(json);
                $.each(json, function(item, value) {
                    alert(item + ":" + json[item]);
                });
            });
        });

        $("#ButJson5").click(function() {
            $.getJSON("/AjaxTest/getJsonDeSerializingJson", { json: '{"ID":201,"FirstName":"C","LastName":"HY","Man":true}' }, function(json) {
                alert(json);
                $.each(json, function(item, value) {
                    alert(item + ":" + json[item]);
                });
            });
        });

 

        //================================================================

        $("#ButSerializing").click(function() {
            $.ajax({
                type: "POST",
                url: "/AjaxTest/testSerializingJson",
                data: "ID=101&FirstName=C&LastName=HY&Man=false",
                async: true,
                cache: false,
                success: function(obj) {
                    alert(obj);
                },
                error: function() {
                    alert("请求失败");
                }
            });
        });

        $("#ButDeSerializing").click(function() {
            $.ajax({
                type: "POST",
                url: "/AjaxTest/testDeSerializingJson",
                data: 'json={"ID":201,"FirstName":"C","LastName":"HY","Man":true}',
                async: true,
                cache: false,
                success: function(obj) {
                    alert(obj.ID + obj.FirstName + obj.LastName + obj.Man);
                },
                error: function() {
                    alert("请求失败");
                }
            });
        });

        $("#ButSerializingList").click(function() {
            $.ajax({
                type: "POST",
                url: "/AjaxTest/serializingList",
                data: "",
                async: true,
                cache: false,
                success: function(obj) {
                    alert(obj + "length:" + obj.length);
                    $.each(obj, function() {
                        $.each(this, function(item, value) {
                            alert(item + ":" + json[item]);
                        });
                    });
                },
                error: function() {
                    alert("请求失败");
                }
            });
        });


Controllers 代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization.Json;
using System.Web;
using System.Web.Mvc;

namespace MvcApplication.Controllers
{
    public class Person
    {
        public int ID { get; set; }
        public string FirstName { get; set; }
        public string LastName { get; set; }
        public bool Man { get; set; }
    }

    public class AjaxTestController : Controller
    {      
        #region  ===============$.Ajax测试=================
        /// <summary>
        /// 测试返回对象
        /// </summary>
        /// <param name="form"></param>
        /// <returns></returns>
        public JsonResult getPerson(FormCollection form)
        {
            Person p = new Person
            {
                ID = int.Parse(form["ID"]),
                FirstName = form["FirstName"],
                LastName = form["LastName"]
            };
            return Json(p);
        }

        /// <summary>
        /// 经测试发现:当Global中定义{controller}/{action}/{id}时
        /// 前台url?ID=3&FirstName=C&LastName=HY传到后台时ID值为""
        /// 所以把Global中定义为{controller}/{action}/{uid}
        /// </summary>
        /// <param name="ID"></param>
        /// <param name="FirstName"></param>
        /// <param name="LastName"></param>
        /// <returns></returns>
        public JsonResult getPerson2(string ID, string FirstName, string LastName)
        {
            Person p = new Person
            {
                ID = int.Parse(ID),
                FirstName = FirstName,
                LastName = LastName
            };
            return Json(p);
        }

        /// <summary>
        /// 测试返回字符串
        /// </summary>
        /// <returns></returns>
        public ContentResult getString()
        {
            return Content("{id:'2',FirstName:'C',LastName:'HY'}");
        }

        /// <summary>
        /// 测试返回json字符串
        /// </summary>
        /// <returns></returns>
        public ContentResult getJsonString()
        {
            return Content("({id:'2',FirstName:'C',LastName:'HY'})");
        }

        #endregion

        #region ==============$.getJSON(返回json格式测试)============

        /// <summary>
        /// 经测试发现必须是双引号(")不能是单引号(')
        /// </summary>
        /// <param name="Code"></param>
        /// <param name="FirstName"></param>
        /// <param name="LastName"></param>
        /// <returns></returns>
        public ContentResult getJson1(string ID, string FirstName, string LastName)
        {
            return Content("{\"id\":1,\"name\":\"chy\",\"flag\":true}");
        }

        /// <summary>
        /// 经测试发现必须是双引号(")不能是单引号(')
        /// </summary>
        /// <param name="Code"></param>
        /// <param name="FirstName"></param>
        /// <param name="LastName"></param>
        /// <returns></returns>
        public ContentResult getJson2(string ID, string FirstName, string LastName)
        {
            return Content("{\"id\":\"2\",\"name\":\"chy\"}");
        }

        /// <summary>
        /// 经测试发现必须是双引号(")不能是单引号(')
        /// 产生错误前台没反应
        /// </summary>
        /// <param name="Code"></param>
        /// <param name="FirstName"></param>
        /// <param name="LastName"></param>
        /// <returns></returns>
        public ContentResult getJson3(string ID, string FirstName, string LastName)
        {
            return Content("{'id':'3'}");
        }

        #endregion

        #region============Newtonsoft.Json.dll(json序列化和反序列化测试)=============

        /// <summary>
        /// $.Ajax序列化Json
        /// </summary>
        /// <param name="ID"></param>
        /// <param name="FirstName"></param>
        /// <param name="LastName"></param>
        /// <returns></returns>
        public ContentResult testSerializingJson(FormCollection form)
        {
            Person p = new Person
            {
                ID = int.Parse(form["ID"]),
                FirstName = form["FirstName"],
                LastName = form["LastName"]
            };
            return Content(Newtonsoft.Json.JsonConvert.SerializeObject(p));
        }      

        /// <summary>
        /// $.Ajax反序列化json
        /// </summary>
        /// <param name="form"></param>
        /// <returns></returns>
        public JsonResult testDeSerializingJson(FormCollection form)
        {
            Person p = Newtonsoft.Json.JsonConvert.DeserializeObject<Person>(form["json"].ToString());
            return Json(p);
        }

        /// <summary>
        /// $.getJSON序列化Json
        /// </summary>
        /// <param name="ID"></param>
        /// <param name="FirstName"></param>
        /// <param name="LastName"></param>
        /// <returns></returns>
        public ContentResult getJsonSerializingJson(string ID, string FirstName, string LastName)
        {
            Person p = new Person
            {
                ID = int.Parse(ID),
                FirstName = FirstName,
                LastName = LastName
            };
            return Content(Newtonsoft.Json.JsonConvert.SerializeObject(p));
        }

        /// <summary>
        /// $.getJSON反序列化json
        /// </summary>
        /// <param name="form"></param>
        /// <returns></returns>
        public ContentResult getJsonDeSerializingJson(string json)
        {
            Person p = Newtonsoft.Json.JsonConvert.DeserializeObject<Person>(json);
            return Content(Newtonsoft.Json.JsonConvert.SerializeObject(p));
        }

        #endregion

        #region================返回集合================

        public JsonResult serializingList()
        {
            List<Person> ls = new List<Person>();
            ls.Add(new Person
            {
                ID = 1,
                FirstName = "C",
                LastName = "HY",
                Man = false
            });

            ls.Add(new Person
            {
                ID = 2,
                FirstName = "Z",
                LastName = "JJ",
                Man = true
            });
            return Json(ls);
        }

        public JsonResult deSerializingList(string json)
        {
            List<Person> listP = new List<Person>();

            List<string> listStr = json.Split(',').ToList<string>();

            foreach (string s in listStr)
            {
                listP.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<Person>(s));
            }

            return Json(listP);
        }

        #endregion
    }
}

Asp.Net MVC之jQuery与AJAX操作实例 立即下载

相关推荐

OpenAI Realtime API实时语音交互实战指南

实时语音交互是人机自然对话的核心能力,其本质在于构建低延迟、双向、流式协同的音频-语义闭环。它突破传统REST API的请求-响应范式,依托WebSocket实现毫秒级音频输入流(audio.delta)、模型生成流(text/audio.delta)与动态控制流(session.update)三重并行。该技术显著降低端到端延迟至300ms以内,支撑语音助手、智能客服、对话式教育等强实时场景。本文聚焦OpenAI Realtime API的工程落地,详解PCM音频流处理、VAD语音活动检测、AudioCon

weixin_32285357的博客 393

asp.net mvc jquery ajax post,使用ASP.NET MVC在JS文件中设置jQuery的ajax url

这样可以充分利用MVC路由,以便充分利用MVC框架。灵感来自于stusmith的答案。在这里我有一个ActionController的动作javascript为这个URL的动作:/application/js我在这里包括静态文件,因为我只需要一个主要的javascript文件下载。你可以选择只要返回动态的东西,如果你想要的:/// /// Renders out javascript/// ///...

weixin_29715563的博客 422

docker安装的 n8n提示Your n8n server is configured to use a secure cookie, however you are either visiting

将原来的docker n8n进行删除后即可通过一下方式重新安装,如安装完n8n,提示。

满地找牙的博客 3366

MVC + JQUERY + AJAX的几种方式

// 传过去一个简单值,获取一个简单值$.ajax({                   type: "GET",                url: ,                  data: "type=11",                 success: function (msg) { alert(msg); }               });   p

935

DINOv3实战指南:如何利用零样本视觉模型革新工业质检

本文详细介绍了如何利用DINOv3零样本视觉模型革新工业质检流程。通过无需标注数据的自监督学习技术,DINOv3能快速部署高精度检测系统,显著降低成本和提升效率。文章涵盖模型选型、数据准备、实时检测优化及典型行业解决方案,为工业质检提供革命性AI实践指南。

ansible6ops的博客 124

【HSCNN解析】HSCNN:从欠采样光谱图重建高光谱图的CNN网络

本文介绍HSCNN,是一个将欠采样光谱图重建为高光谱图的纯CNN网络,2017年提出。

上个大学哪有不疯的?硬撑罢了! 1623

asp.net中Jquery调用Ajax与asp.net MVC框架中Jquery调用Ajax 总结

以前使用的是js的XMLHttpRequest实现的无刷新技术,最近参考网上整理了一下用Jquery调用Ajax方法,对于熟悉Jquery的人来说是比较容易的,而对于不熟悉的人来说比较困难,闲话少说,看代码  一、asp.net中Jquery调用Ajax  前台代码MyAjax1.aspx为页面名称,AddUsers为后台方法名称       添加用户

haojuntu的专栏 6353

DSI3协议介绍

分布式系统接口(DSI)是一种通用且功能强大的总线协议,旨在将多个遥感器和执行器设备互连到中央控制模块。该网络的主要目标应用是汽车安全系统。这种应用的一些特点是需要低成本、高鲁棒性、中速互连,仅限于两根导线。此外,它必须具有故障安全性、确定性和良好的EMC特性。即使具有所有级别的智能和可编程性的设备都可以连接到网络,远程设备也必须能够通过简单的状态机实现。由于模块尺寸非常重要,因此中央模块和远程单元中的最小组件至关重要。

汽车电子软件领域知识分享 1万+

.net MVC中Jquery实现AJAX详解

声明 这是我一边学,一边写的: 好处是:我从新手的角度出发,谈自己的理解,每一步的操作也都是按照新手入门来做,有截图。 坏处是:部分地方可能说的不到位或错误。不过作为新手,我觉得能先帮你理解着实现功能貌似更重要。 开始: 0 前言: Ajax本质是一个web数据请求的手段,既然是请求,也就是有请,有求。也就是客户端(html页面)向服务器发送请求获得数据的手段。 世间万物万变不离其宗...

天空 1万+

网络工程师如何利用Python自动Telnet到N个路由器并执行配置?

telnetlib是Python标准库中的一个模块,专门用于实现Telnet协议。通过telnetlib,我们可以方便地与支持Telnet协议的远程设备进行通信。telnetlib提供了基本的Telnet功能,如连接远程主机、发送命令、读取响应等,使得编写Telnet自动化脚本变得非常简单。文档:可以选择中文:虽然telnetlib的功能相对基础,但对于大多数Telnet操作来说已经足够。通过telnetlib,可以轻松地实现与网络设备的交互,完成自动化配置任务。

网络技术联盟站 298

Android系统开机时间分析与优化指南

本文系统阐述了Android开机时间优化的全流程技术方案。首先详细解析了从电源键按下到桌面显示的完整启动流程及关键事件序列,然后介绍了秒表计时、日志分析和自动化脚本三种测量方法。重点从底层和上层两个维度提出了具体优化措施:底层包括编译器优化、内核驱动裁剪和日志精简;上层涵盖系统服务参数调整、应用预优化和功能组件精简。最后提供了验证工具和方法,并强调优化需要在性能、功耗和功能间取得平衡。通过这套系统化方案,可有效提升Android设备的开机速度与用户体验。

学无止境 352

ajax aspx 多参,如何在ASP.NET MVC中使用JQuery.Ajax传递多个参数

嗨,大家好,我是JSon的新手,不太清楚如何传递数据。我正在使用ASP.NET MVC作为我的开发平台。如何在ASP.NET MVC中使用JQuery.Ajax传递多个参数在查看:$(document).ready(function() {$("select#Colors").change(function() {var photoCategory = $("#Colors > option...

weixin_39825722的博客 508

CATIA V6二次开发——如何利用CaptureToFile截屏

CaptureToFile 今天给大家分享一个很有趣的功能,如何利用CATIA自带的功能输出模型展示图? 先上方法: 方法本身并不难,只需要赋予格式及输出路径即可完成该功能。结果如下: 看到这样一张图片不禁让我陷入了沉思,怎么会这么丑???? 那么如何让这个简单的功能变得有趣,图片变得好看点呢? 第一步:背景换色 第二步:隐藏结构树 ...

WorkMan的博客 2984

使用Asp.net MVC, Jquery, Jquery UI构建基于Ajax的RIA应用.

使用Asp.net MVC, Jquery, Jquery UI构建基于Ajax的RIA应用. 前天初学Asp.net MVC,发现有些东西用Web Form来做的确会比较方便. 但Asp.net MVC也有它的优点. 它如果跟Jquery和Jquery UI结合起来做基于Ajax的应用实在是太方便了!!下面用图形说明:这次还是做一个树形控件.需要特别说明的是,这个Demo全部都是用Ajax做的,

shaily读书学习 2271

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

[转]使用jQuery.ajax傳送物件陣列給ASP.NET MVC

本文转自:http://blog.darkthread.net/post-2012-06-23-post-array-to-mvc-with-jquery-ajax.aspx 在ASP.NET MVC裡,我們可以用物件集合當成Action的傳入參數,例如以下範例: 排版顯示純文字複製文字 using System; using System.Collections.Generic;...

weixin_33769125的博客 102

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

asp net mvc ajax上传图片,在asp.net mvc中使用jQuery ajax上传文件

慕容森在ASP.Net MVC中使用AJAX上传文件自HTML5以来,情况发生了变化JavaScript的document.getElementById('uploader').onsubmit=function(){varformdata=newFormData();//FormDataobjectvarfileInput=document.getEle...

weixin_32259697的博客 415

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

使用jQuery.Ajax向ASP.NET MVC控制器Post数据

jQuery自带了Ajax的函数,你可以使用它从远程服务器下载网页,但问题是,大部分Ajax都是通过GET这种方式与远程服务器交互的。 但如果你想通过Ajax向远程服务器传递数据呢?当然jQuery.Ajax里面有一个参数data参数允许你传递发送到服务器的数据。但问题是,这个数据默认是采用GET方式,即附加在请求字符串(URL QueryStri...

weixin_33766805的博客 267

asp.net ajax提交表单,ASP.Net MVC,使用JQuery.Ajax提交表单

我想使用JQuery Ajax提交表单(Html.BeginForm())。 根据this question,它应该工作! 我不明白为什么来自动作SendEmail()的参数'email'没有从js获取值。 你能帮我吗?ASP.Net MVC,使用JQuery.Ajax提交表单笔者认为:{ %>De...A... Model.Agent.Email, new { @id = "MailTo"...

weixin_36145011的博客 489

asp.net mvc jquery ajax post,使用ASP.NET MVC在JS文件中为jQuery设置ajax url

小编典典这种方式充分利用了MVC路由,因此您可以充分利用MVC框架。受斯图史密斯答案的启发。在这里,我有一个ApplicationController针对此URL的动态javascript 操作:/application/js我在此处包括静态文件,因为我只想下载一个主Javascript文件。您可以根据需要选择只返回动态内容:/// /// Renders out javascript/// //...

weixin_29015899的博客 355

ajax显示数据库asp.net,从数据库中获取数据并使用Ajax,Jquery,Asp.Net以表格格式显示MVC...

我已经建立了与数据库的连接,并且我希望在表格格式的视图中显示数据库中的所有详细信息,但是无法做到这一点,因为我的新人可以帮助任何人。从数据库中获取数据并使用Ajax,Jquery,Asp.Net以表格格式显示MVCpublic class EmployeeModel{public int EmpId { get; set; }public string EmpName { get; set; }p...

weixin_39645308的博客 380

使用Asp.net MVC, Jquery, Jquery UI构建基于Ajax的RIA应用.(更新Demo下载)

前天初学Asp.net MVC,发现有些东西用Web Form来做的确会比较方便. 但Asp.net MVC也有它的优点. 它如果跟Jquery和Jquery UI结合起来做基于Ajax的应用实在是太方便了!!下面用图形说明: 这次还是做一个树形控件.需要特别说明的是,这个Demo全部都是用Ajax做的,增删改都无刷新,而且可以方便地换肤..以下是最终的效果图: 新建分类. 用上Effe...

weixin_34410662的博客 132

asp.net mvc jquery ajax post,在asp.net mvc中使用jQuery ajax上传文件

自HTML5以来,情况发生了变化JavaScript的document.getElementById('uploader').onsubmit=function(){varformdata=newFormData();//FormDataobjectvarfileInput=document.getElementById('fileInput');//Iterating...

weixin_35774805的博客 238

asp.net MVC3 + JQuery 的ajax简单使用

asp.net MVC3 + JQuery 的ajax简单使用 一直都没有使用过JQuery,更没使用过JQuery的ajax支持带来的方便,今天试了一下,真是减少了很多工作量,使用方法也比较简单 这里先记下来,以后使用时可以再拿着用。 本应用中,本来是准备使用长链接的方式,在server端有错误消息产生时,能实时返回错误消息。可在使用长链接时,因为.net功底 不够,以失败告终!...

ikeycn的专栏 282
上一篇: (转)Expression Blend实例中文教程系列文章汇总
下一篇: asp.net MVC 使用Ext.Ajax.request
黑暗行动
博客等级 码龄19年 231粉丝 554原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值