GVKun编程网logo

在ASP.NET MVC中对控制器进行简单的Ajax调用(asp.net mvc 控制器)

24

对于在ASP.NETMVC中对控制器进行简单的Ajax调用感兴趣的读者,本文将会是一篇不错的选择,我们将详细介绍asp.netmvc控制器,并为您提供关于Ajax在ASP.NETMVC中上传、ajax

对于在ASP.NET MVC中对控制器进行简单的Ajax调用感兴趣的读者,本文将会是一篇不错的选择,我们将详细介绍asp.net mvc 控制器,并为您提供关于Ajax在ASP.NET MVC中上传、ajax调用mvc控制器、ASP.NET MVC中的AJAX应用、asp.net-mvc – ASP.NET MVC Html.DropDownList由Ajax调用控制器填充?的有用信息。

本文目录一览:

在ASP.NET MVC中对控制器进行简单的Ajax调用(asp.net mvc 控制器)

在ASP.NET MVC中对控制器进行简单的Ajax调用(asp.net mvc 控制器)

我正在尝试开始使用ASP.NET MVC Ajax调用。

控制器:

public class AjaxTestController : Controller{    //    // GET: /AjaxTest/    public ActionResult Index()    {        return View();    }    public ActionResult FirstAjax()    {        return Json("chamara", JsonRequestBehavior.AllowGet);    }   }

视图:

<head runat="server">    <title>FirstAjax</title>    <script src="http://code.jquery.com/jquery-1.9.1.js"></script>    <script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>    <script type="text/javascript">        $(document).ready(function () {            var serviceURL = ''/AjaxTest/FirstAjax'';            $.ajax({                type: "POST",                url: serviceURL,                data: param = "",                contentType: "application/json; charset=utf-8",                dataType: "json",                success: successFunc,                error: errorFunc            });            function successFunc(data, status) {                     alert(data);            }            function errorFunc() {                alert(''error'');            }        });    </script></head>

我只需要使用返回数据的控制器方法来打印警报。上面的代码仅在我的视图上显示“ chamara”。警报未触发。

更新

我如下修改了控制器,它开始工作。我不清楚为什么它现在可以正常工作。请有人解释。参数“
a”与之无关,我添加了它,因为我无法添加具有相同方法名和参数的两个方法。我认为这可能不是解决方案,但其工作原理

public class AjaxTestController : Controller    {        //        // GET: /AjaxTest/        [HttpGet]        public ActionResult FirstAjax()        {            return View();        }        [HttpPost]        public ActionResult FirstAjax(string a)        {            return Json("chamara", JsonRequestBehavior.AllowGet);        }    }

答案1

小编典典

完成更新后,

  1. 它首先使用默认的HttpGet请求调用FirstAjax操作,并呈现空白的Html视图。(之前您没有)
  2. 稍后在加载该视图的DOM元素时,您的Ajax调用会被触发并显示警报。

之前,您只是将JSON返回浏览器,而不呈现任何HTML。现在,它呈现了一个HTML视图,可以在其中获取JSON数据。

您不能直接将JSON的纯数据而不是HTML呈现。

Ajax在ASP.NET MVC中上传

Ajax在ASP.NET MVC中上传

HomeController.cs

using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; namespace ajaxUpload.Controllers { public class HomeController : Controller { [HttpPost] public JsonResult Upload() { var uploadedFile = Request.Files[0] as HttpPostedFileBase; return Json(uploadedFile.FileName); } public ActionResult Index() { return View(); } } }

Index.cshtml@   

ViewBag.Title = "Home Page"}

<div class="jumbotron"> <h1>Ajax在ASP.NET MVC中上传</h1> </div> <div class="row"> <div id="main"> <h1>上传您的图片</h1> <form id="uploadfrm" method="post" enctype="multipart/form-data" action="/home/upload"> <input type="file" name="images" id="images" /> </form> <div id="response"></div> <ul id="image-list"></ul> </div> <button onclick="Upload();">上传</button> </div> <script> function Upload() { var form = document.getElementById(‘uploadfrm‘); var formData = new FormData(form);  // 这里如何把form的数据上传
$.ajax({ url: "/home/upload",type: "POST",data: formData,processData: false,contentType: false,success: function (res) { document.getElementById("response").innerHTML = res; } }); } </script>

ajax调用mvc控制器

ajax调用mvc控制器

function btnLogin_click() {

$.ajax({

type: "post",

url:"/Home/LoginSystem",//控制器路径

data: "userAccount="+ $.trim($("#txtUserAccount").val()) + "&userPassWord="+ $.trim($("#txtUserPassWord").val()),//参数

cache: false,

success: function (msg) {

if (msg == '1') {

location.href ='/Home/Index';

}

else {

alert(msg);

}

}

});

}

ASP.NET MVC中的AJAX应用

ASP.NET MVC中的AJAX应用

一、ASP.NET MVC中的AJAX应用

首先,在ASP.NET MVC中使用自带的ajax功能,必须要导入2个js文件(顺序不能颠倒):

                    

ASP.NET MVC提供了2个常用的ajax辅助方法.

Ajax.ActionLink

该辅助方法用于在页面上生成具有ajax功能的超链接.

                    

在该辅助方法中有一个AjaxOptions类型的参数,它包括如下属性:

Confirm:在发送ajax请求前,弹出确认对话框,该属性就是设置对话框中的提示消息HttpMethod:用于设置请求的类型:Get|PostUpdateTargetId:用于设置服务器响应的结果更新到页面中目标元素IDInsertionMode:用于设置服务器相应的结果如何插入到被更新的元素中,它的值可以包括3种:

InsertionMode.Replace:用新值替换旧值(默认值)

InsertionMode.InsertAfter:将新值插入到目标元素的底部

InsertionMode.InsertBefore:将新值插入到目标元素的顶部

OnBegin:当执行ajax请求前,执行的js函数OnSuccess:当执行ajax请求成功时,执行的js函数OnFailure:当ajax请求失败时,执行的js函数OnComplate: 当ajax请求完成后,执行的js函数(不管请求失败或成功,都会执行)LoadingElementId:在ajax请求期间,可以显示一段友好的提示,该属性用于设置提示元素的IDLoadingElementDuration: 提示元素在显示和隐藏时,可以执行一段动画,该属性用于设置提示元素的动画执行时间

                    

Ajax.BeginForm

该ajax辅助方法用于以ajax方式提交表单数据.

                    

其他

如何在页面中加载分部视图?

方式一:调用Html.RenderPartial(“viewName”)

方式二:调用Html.RenderAction(“actionName”)

他们之间的区别如下图所示:

                    

何时使用RenderAction,何时使用RenderPartial?

如果需要向视图中传递数据,而原视图中又没有需要传递的数据时,就需要调用RenderAction.

注意: Html.RenderPartial有多种重载形式,下面列举它的2种常用形式:

Html.RenderPartial(“分布视图的名称”)

Html.RenderPartial(“分部视图的名称”, object 模型数据)

如何从服务器获取一段json格式的字符串?

服务器的Action方法返回值类型为JsonResult,并且在方法内部可以调用Controller.Json()辅助方法.

您可能感兴趣的文章:
  • asp.net+ajax的Post请求实例
  • asp.net+ajaxfileupload.js 实现文件异步上传代码分享
  • asp.net使用AJAX实现无刷新分页
  • ASP.NET中MVC使用AJAX调用JsonResult方法并返回自定义错误信息
  • asp.net+ajax+sqlserver自动补全功能实现解析
  • jquery.Ajax()方法调用Asp.Net后台的方法解析
  • ASP.NET中使用Ajax的方法
  • Ajax+asp.net智能匹配检索(含图含完整代码)
  • ASP.NET中实现jQuery Validation-Engine的Ajax验证
  • ASP.NET中Ajax怎么使用

asp.net-mvc – ASP.NET MVC Html.DropDownList由Ajax调用控制器填充?

asp.net-mvc – ASP.NET MVC Html.DropDownList由Ajax调用控制器填充?

我想创建一个表示为下拉列表的字段类型的编辑器模板。在编辑器模板的定义中,我想使用调用控件上的动作来调用DropDownList,返回结果为JSON – 任何想法如何做?

例如:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<TheFieldType>" %>
<%= Html.DropDownList(.....

解决方法

在编辑器模板中提供一个空的下拉列表:
<%= Html.DropDownListFor(
    x => x.PropertyToHoldSelectedValue,Enumerable.Empty<SelectListItem>(),"-- Loading Values --",new { id = "foo" }) 
%>

然后设置一个将返回值的控制器操作:

public class FooController: Controller
{
    public ActionResult Index()
    {
        return Json(new[] {
            new { Id = 1,Value = "value 1" },new { Id = 2,Value = "value 2" },new { Id = 3,Value = "value 3" },},JsonRequestBehavior.AllowGet);
    }
}

然后使用AJAX填充值:

$(function() {
    $.getJSON('/foo/index',function(result) {
        var ddl = $('#foo');
        ddl.empty();
        $(result).each(function() {
            $(document.createElement('option'))
                .attr('value',this.Id)
                .text(this.Value)
                .appendTo(ddl);
        });
    });
});

今天关于在ASP.NET MVC中对控制器进行简单的Ajax调用asp.net mvc 控制器的讲解已经结束,谢谢您的阅读,如果想了解更多关于Ajax在ASP.NET MVC中上传、ajax调用mvc控制器、ASP.NET MVC中的AJAX应用、asp.net-mvc – ASP.NET MVC Html.DropDownList由Ajax调用控制器填充?的相关知识,请在本站搜索。

本文标签: