【发布时间】:2018-01-28 18:49:39
【问题描述】:
我正在尝试使用 jQuery AJAX 使用 POST 方法将数据发送到控制器。这是我用来发送数据的代码:
$('#save_new').on('click', function () {
var category_name = $('#new_category').val();
var description = $('#new_description').val();
$.ajax({
type: 'POST',
url:"/admin/news-category/addNew",
data: JSON.stringify({ category_name: category_name ,description:description}),
contentType: 'application/json; charset=utf-8',
dataType:'json',
success: function (ctct) {
alert("success function run,");
},
error: function () {
alert("Failed to save news category.");
}
});
});
这是我的控制器:
[Route("/admin/news-category")]
public class NewsCategoryController : Controller
{
[Route("addNew")]
[HttpPost]
public IActionResult addNew(string category_name,string description)
{
NewsCategory news_category = new NewsCategory();
if (ModelState.IsValid)
{
// some statements here
return Json(new { success = true, responseText = "News Category added successfully" });
}
return Json(new { success = false, responseText = "Invalid input datas.Please enter valid datas and try again" });
}
}
执行尚未到达控制器中的 addNew 操作。问题的原因是什么?
更新 1:这是我在 Startup
中的 MapRoute app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
【问题讨论】:
-
你能专门用 MapRoutes 发布你的启动吗?
-
@mvermef 我更新了我的问题。可以看看吗?
标签: jquery ajax asp.net-core-mvc