在ASP.NET MVC中从外部javascript文件提交Ajax请求

在ASP.NET MVC中从外部javascript文件提交Ajax请求,javascript,asp.net,asp.net-mvc,Javascript,Asp.net,Asp.net Mvc,我正在尝试从ASP.NET MVC中的外部JavaScript文件提交ajax请求。我得了500分。我做错了什么 Ajax调用(来自外部JS文件) 控制器操作方法(应捕获请求) 我犯了一个错误 您的ajax调用需要在控制器中调用ActionResult,控制器执行并将数据返回到页面 [HttpPost] public ActionResult ajaxcall(string ids) { String Data = code to perform

我正在尝试从ASP.NET MVC中的外部JavaScript文件提交ajax请求。我得了500分。我做错了什么

Ajax调用(来自外部JS文件)

控制器操作方法(应捕获请求)

我犯了一个错误

您的ajax调用需要在控制器中调用ActionResult,控制器执行并将数据返回到页面

 [HttpPost]
    public ActionResult ajaxcall(string ids)
    {
        String Data = code to perform
        return Json(Data);
    }

这是基本思想。Javascript调用并使用客户端页面上返回的json数据

您需要删除
contentType
选项

$.ajax({
    type: "POST",
    url: '/Home/AjaxEndpoint',
    data: { jsonData: "testing" },
    dataType: "json",
    success: successFunc,
    error: errorFunc
});
或者,将数据字符串化

$.ajax({
    type: "POST",
    url: '/Home/AjaxEndpoint',
    data: JSON.stringify({ jsonData: "testing" }),// modify
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: successFunc,
    error: errorFunc
});

你需要把你的代码放在问题中,而不是它的图像。并删除
contentType
选项(您没有对数据进行字符串化),请不要编辑带有答案的问题(我已经删除了它)。添加您自己的答案并接受它以结束此问题。如果您有建议的解决方案,例如“删除contentType选项”,请创建一个答案,以便我可以接受它,而不是将其隐藏在问题的评论中。
$.ajax({
    type: "POST",
    url: '/Home/AjaxEndpoint',
    data: { jsonData: "testing" },
    dataType: "json",
    success: successFunc,
    error: errorFunc
});
$.ajax({
    type: "POST",
    url: '/Home/AjaxEndpoint',
    data: JSON.stringify({ jsonData: "testing" }),// modify
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: successFunc,
    error: errorFunc
});